下面是每条记录中的一些XML:
<MT N="usage" V="something"/>
<MT N="usage" V="something else"/>
我试图用XSLT显示每个记录的所有这些V值,但我有针对正确值的问题。
<xsl:for-each select="MT[@N = 'usage']/@V">
<xsl:value-of select="V"/>
11
</xsl:for-each>
输出"1111",但不显示V的值。我该如何定位呢?
欢呼
select="V"可能不是节点。
<xsl:for-each select="MT[@N = 'practice']">
<xsl:value-of select="@V"/>
11
</xsl:for-each>
<xsl:for-each select="MT[@N = 'usage']/@V"> <xsl:value-of select="V"/> 11 </xsl:for-each>
上面的<xsl:value-of>
试图显示当前节点的子元素V
的值。但是,当前节点是一个属性,并且属性根据定义没有子节点。这就是你的问题。
<xsl:for-each select="MT[@N = 'usage']/@V">
<xsl:value-of select="."/>
11
</xsl:for-each>
现在<xsl:value-of>
输出当前节点的字符串值——这可能是有意的