XSLT <xsl:number> 元素
定义和用法
<xsl:number> 元素用于测定在源中当前节点的整数位置。它也用于将格式化的数字插入结果树。
语法
- <xsl:number
- count="expression"
- level="single|multiple|any"
- from="expression"
- value="expression"
- format="formatstring"
- lang="languagecode"
- letter-value="alphabetic|traditional"
- grouping-separator="character"
- grouping-size="number"/>
属性
属性 | 值 | 描述 |
---|---|---|
count | expression | 可选。XPath 表达式,规定要计算的节点。 |
level |
single multiple any |
可选。控制如何分配序号。
值可以是: single (默认) multiple any (Netscape 6 不支持) |
from | expression | 可选。XPath 表达式,规定从何处开始计数。 |
value | expression | 可选。规定用户提供的数字,用于代替产生的序号。 |
format | formatstring | 可选。定义数字的输出格式。可以使用的值。 |
lang | languagecode | 可选。规定用于编号的语言字母表。 |
letter-value | alphabetic traditional | 可选。消除使用字母的编号序列之间的歧义。值 "alphabetic" 指定字母序列;值 "traditional" 指定其他序列。默认值为 "alphabetic"。 |
grouping-separator | character | 可选。规定使用什么字符来分隔组或数字。默认是逗号。 |
grouping-size | number | 可选。规定分组的大小。默认是 3。 |
格式标记
格式标记 | 生成的序列 |
---|---|
1 | 1 2 3 4 5 … 10 11 12 … |
01 | 01 02 03 … 19 10 11 … 99 100 101… |
a | a b c . . |
A | A B C …Z AA AB AC… |
i | i ii iii iv v vi vii viii ix x… |
I | I II III IV V VI VII VIII IX X… |
注释:Netscape 6 不支持的标记:01、a、A、i、I。
实例
例子 1
- <xsl:number value="250000" grouping-separator="."/>
输出:
- 250.000
例子 2
- <xsl:number value="250000" grouping-size="2"/>
输出:
- 25,00,00
例子 3
- <xsl:number value="12" grouping-size="1" grouping-separator="#" format="I"/>
输出:
- X#I#I
例子 4
- <?xml version="1.0" encoding="ISO-8859-1"?>
- <xsl:stylesheet version="1.0"
- xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
- <xsl:template match="/">
- <html>
- <body>
- <p>
- <xsl:for-each select="catalog/cd">
- <xsl:number value="position()" format="1" />
- <xsl:value-of select="title" /><br />
- </xsl:for-each>
- </p>
- </body>
- </html>
- </xsl:template>
- </xsl:stylesheet>