我要求使用<name>
<Sequence>Id</Sequence>
<Field1>A1</Field1>
<Field2<A2</Field2>
</name>
<name>
<Sequence>Id</Sequence>
<Field1>A1</Field1>
<Field2<A2</Field2>
</name>
增加数字。但是我需要从0开始而不是从1开始。
示例输入:
<name>
<Sequence>Id0</Sequence>
<Field1>A1</Field1>
<Field2<A2</Field2>
</name>
<name>
<Sequence>Id1</Sequence>
<Field1>A1</Field1>
<Field2<A2</Field2>
</name>
示例输出:
<name>
<Sequence>
Id<xsl:number level="single"/></Sequence>
------
</name>
XSLT代码段:
<xsl:number level="single"/>
生成Id1&amp; Id2而不是Id0&amp; ID1。我出于某种原因无法使用position()。是否可以进行像-1等算术运算,例如:Id A B
1 01/05/2017 10
2 02/05/2017 5
3 03/05/2017 7
4 04/05/2017 11
-1
答案 0 :(得分:1)
https://www.w3.org/TR/xslt-30/#number具有start-at
属性。您当然也可以使用<xsl:variable name="n"><xsl:number/></xsl:variable><xsl:value-of select="$n - 1"/>
。