0
我想列出包含某個子節點的所有節點中的某個特定ID。使用XSLT映射XML內容
拿這個示例XML:
<foo>
<bar name="hello">
<baz id="1" />
</bar>
<bar name="there">
<baz id="1" />
<baz id="2" />
</bar>
<bar name="world">
<baz id="3" />
</bar>
</foo>
我拿出其中包含兩個嵌套循環for-each
<xsl:for-each select="/foo/bar/baz">
<xsl:variable name="id" select="@id" />
<xsl:value-of select="$id" />
<ul>
<xsl:for-each select="/foo/bar/baz">
<xsl:variable name="local_id" select="@id" />
<xsl:variable name="bar_name" select="../@name" />
<xsl:if test="$id = $local_id">
<li><xsl:value-of select="$bar_name" /></li>
</xsl:if>
</xsl:for-each>
</ul>
</xsl:for-each>
其中給出以下結果如下XSLT模板
1
- hello
- there
1
- hello
- there
2
- there
3
- world
問題是第一個鍵/值對是重複的。
太好了!很有用,謝謝! – Theodor