XSLT <xsl:number> 元素


定义和用法

<xsl:number> 元素用于测定在源中当前节点的整数位置。它也用于将格式化的数字插入结果树。


语法

  1. <xsl:number
  2. count="expression"
  3. level="single|multiple|any"
  4. from="expression"
  5. value="expression"
  6. format="formatstring"
  7. lang="languagecode"
  8. letter-value="alphabetic|traditional"
  9. grouping-separator="character"
  10. grouping-size="number"/>
属性
属性描述
countexpression可选。XPath 表达式,规定要计算的节点。
level
  • single
  • multiple
  • any

可选。控制如何分配序号。

值可以是:

  • single (默认)
  • multiple
  • any (Netscape 6 不支持)
fromexpression可选。XPath 表达式,规定从何处开始计数。
valueexpression可选。规定用户提供的数字,用于代替产生的序号。
formatformatstring可选。定义数字的输出格式。可以使用的值。
langlanguagecode可选。规定用于编号的语言字母表。
letter-valuealphabetictraditional可选。消除使用字母的编号序列之间的歧义。值 "alphabetic" 指定字母序列;值 "traditional" 指定其他序列。默认值为 "alphabetic"。
grouping-separatorcharacter可选。规定使用什么字符来分隔组或数字。默认是逗号。
grouping-sizenumber可选。规定分组的大小。默认是 3。

格式标记

格式标记生成的序列
11 2 3 4 5 … 10 11 12 …
0101 02 03 … 19 10 11 … 99 100 101…
aa b c . .
AA B C …Z AA AB AC…
ii ii iii iv v vi vii viii ix x…
II II III IV V VI VII VIII IX X…

注释:Netscape 6 不支持的标记:01、a、A、i、I。


实例

例子 1
  1. <xsl:number value="250000" grouping-separator="."/>

输出:

  1. 250.000
例子 2
  1. <xsl:number value="250000" grouping-size="2"/>

输出:

  1. 25,00,00
例子 3
  1. <xsl:number value="12" grouping-size="1" grouping-separator="#" format="I"/>

输出:

  1. X#I#I
例子 4
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <xsl:stylesheet version="1.0"
  3. xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
  4. <xsl:template match="/">
  5. <html>
  6. <body>
  7. <p>
  8. <xsl:for-each select="catalog/cd">
  9. <xsl:number value="position()" format="1" />
  10. <xsl:value-of select="title" /><br />
  11. </xsl:for-each>
  12. </p>
  13. </body>
  14. </html>
  15. </xsl:template>
  16. </xsl:stylesheet>

分类导航