如何获取给定XML中节点的相对位置。我只想考虑" b"节点在" a"节点不在x-> y - > b,我得到的数字是1,2,3,4而不是3,4,5,6。我试过"多个"和"任何"在xsl:number但不起作用。
<x>
<y>
<b></b>
<b></b>
</y>
</x>
<a>
<b></b>
<b></b>
</a>
<a>
<b></b>
<b></b>
</a>
<xsl:for-each select="a">
<dummy>
<xsl:for-each select="b">
<xsl:variable name="pos" select="position()" />
<dummy2><xsl:number level="any"/></dummy2>
</xsl:for-each>
</dummmy>
</xsl:for-each>
我希望dummy2有1,2,3,4个值。
<dummy>
<dummy2>1<dummy2>
<dummy2>2<dummy2>
</dummmy>
<dummy>
<dummy2>3<dummy2>
<dummy2>4<dummy2>
</dummmy>
答案 0 :(得分:3)
您仍然可以使用xsl:number
执行此操作。
试试这个......
<dummy2><xsl:number level="any" count="b[parent::a]" /></dummy2>
或许这......
<dummy2><xsl:number level="any" count="a/b" /></dummy2>
答案 1 :(得分:0)
试试这个:
{{1}}