我需要遍歷多節點結構,但該結構只能由前導節點標識,並且該前導節點之後的節點可能會有所不同。如何遍歷XSL中的多節點結構
在這個例子中,我需要通過每個<title>-some_nodes
,<title>-some_other_nodes
塊迭代
XML文件:
<books>
<title>book_one</title>
<price>price_for_book_one</price>
<notes>notes_for_book_one</notes>
<title>book_two</title>
<price>price_for_book_two</price>
</books>
所需的輸出:
<div class="book">
<h1 id="title">book_one</h1>
<h2 id="values">
<p>price_for_book_one</p>
<p>notes_for_book_one</p>
</h2>
</div>
<div class="book">
<h1 id="title">book_two</h1>
<h2 id="values">
<p>price_for_book_two</p>
</h2>
</div>
我嘗試:
<xsl:template match="/">
<xsl:for-each select="books/title">
<h1 id="title"><xsl:text>Title:</xsl:text>
<xsl:value-of select="." />
</h1>
<h2 id="values">
<!-- have other templates for matching all possible following-sibling nodes -->
<xsl:apply-templates select="following-sibling::*>
</h2>
</xsl:for-each>
</xsl:template>
但是這隻會選擇標題節點而不解析任何其他節點,因爲「books/title」只選擇標題節點。
注:<price>
和<notes>
是兩個示例節點,有可能是在<title>
節點之間的任何東西,我有處理它們的其他模板,但如何選擇它們是我的問題。
任何想法將不勝感激。
你忘了解釋什麼「不真的窩窩rk「...請編輯您的問題,並提供您需要的確切正確結果以及您實際得到的結果。另外,請描述實際結果究竟出了什麼問題。 – 2011-03-16 02:15:19
感謝您的反饋,編輯過的問題。 – highlightall 2011-03-17 20:23:25