使用xslt从xml中选择每个TXT1

时间:2013-05-29 08:50:32

标签: xslt

我有像

这样的xml结构
<TT TXT1="Mouse"/><TT TXT1="Computer"/><TT TXT1="Electronics"/>

我想从这个xml中选择每个TXT1。我尝试了一些代码。我的代码就像

<xsl:variable name="category" select="cate.xml"/>
<xsl value-of select ="$category/TT/TXT1"/>

但我没有得到答案。有人帮忙吗?

1 个答案:

答案 0 :(得分:1)

<xsl:variable name="cat-doc" select="document('cate.xml')"/>
<xsl:variable name="txt1-atts" select="$cat-doc//TT/@TXT1"/>

应该允许您选择文档TXT1中所有TT元素的所有cate.xml属性。

如果您想要输出这些属性值,那么在XSLT 2.0中就可以使用

<xsl:value-of select="$txt1-atts" separator=", "/>

使用XSLT 1.0但是你需要

<xsl:for-each select="$txt1-atts">
  <xsl:if test="position() > 1">, </xsl:if>
  <xsl:value-of select="."/>
</xsl:for-each>