首页 文章

XSLT - 查找元素名称不同的元素的位置

提问于
浏览
-1

我试图使用XSLT在下面的XML中找到 <b> 元素(我希望它是2)的位置:

<root>
  <a>
    ...
  </a>
  <b>
    ...
  </b>
</root>

我试图通过 root/* 在for-each循环期间检索此值 .

基于this similar question,我尝试过使用: count(root/b/preceding-sibling::*)+1 但我似乎得到的只是值'1' . 谁能发现我在这里做错了什么?

1 回答

  • 1

    我试图通过root / *在for-each循环期间检索此值 .

    我怀疑这是一个背景问题 . 在循环期间,您要么处于 <a><b> 的上下文中 . 在这两种情况下, relative 路径 root/b/... 都不会选择任何内容 . 您可以使用 absolute 路径获得更多成功:

    count(/root/b/preceding-sibling::*)+1
    

相关问题