2017-06-23 121 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屬性,說明什麼連續項之間插入 。