我正在尝试使用XSLT在下面的XML中找到<b>
元素(我希望是2)的位置:
<root>
<a>
...
</a>
<b>
...
</b>
</root>
我正试图在for-each循环期间通过root/*
检索此值。
基于this similar question,我尝试过使用:count(root/b/preceding-sibling::*)+1
,但我似乎得到的只是值'1'。谁能发现我在这里做错了什么?
答案 0 :(得分:1)
我正试图在for-each循环期间检索此值 根/*.
我怀疑这是一个背景问题。在循环期间,您处于<a>
或<b>
的上下文中。在这两种情况下,相对路径root/b/...
都不会选择任何内容。使用绝对路径可能会取得更大成功:
count(/root/b/preceding-sibling::*)+1