2017-06-23 86 views
0

如何从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我怎样才能得到第二或第三? 感谢

回答

0

找到了答案 与cats/cat[2]/entity_id我能得到第二

0

的主意,以特定实例“枚举”引用是 不是一个很好的解决方案。

在XSLT 1.0中,如果使用例如xsl:value-ofselect返回 复式节点,然后xsl:value-of需要只有第一返回 项目,其余的显然是“消失”。

为了处理您有充分返回序列:

  • 储存于一个变量,
  • 过程中它在一个循环(for-each)。

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

  • 所有归还物品输出,
  • separator属性,说明什么连续项之间插入 。