XSLT获取子节点

时间:2017-06-23 06:37:10

标签: xml xslt

如何从xslt获取子节点? 这就是我的结构的样子: ``

<?xml version="1.0" encoding="UTF-8"?>
<objects>
    <object>
        <cats>
            <cat>
                <entity_id>1</entity_id>
            </cat>
            <cat>
                <entity_id>2</entity_id>
            </cat>
            <cat>
                <entity_id>10</entity_id>
            </cat>
    </object>
</objects>

我已经尝试过了 cats/cat/entity_id 然后我只得到第一个entity_id我怎样才能获得第二个或第三个? 感谢

2 个答案:

答案 0 :(得分:0)

找到答案 与cats/cat[2]/entity_id我可以得到第二个

答案 1 :(得分:0)

制作&#34; enumerative&#34;的想法对特定实例的引用是 不是一个好的解决方案。

在XSLT 1.0中,如果您使用例如xsl:value-of返回select mutliple 节点,然后xsl:value-of只返回第一个 项目和其他显然&#34;消失&#34;。

为了处理完整的返回序列,你必须:

  • 将其存储在变量
  • 以循环(for-each)处理它。

此功能在XSLT 2.0中已更改,其中:

  • 输出
  • 所有项,
  • separator属性,说明要插入的内容 连续项之间。