XSLT使用value-of从具有属性的节点检索文本

时间:2013-08-19 20:40:15

标签: xml xslt xpath

我有兴趣从以下XML中检索foo

<a>
  <b>
    <c num="2">foo</c>
    <c num="3">bar</c>
  </b>
</a>

使用XSLT + XPATH,我试图做类似的事情:

<xsl:value-of select="a/b/c/@num=2/current()">

但我不认为这会正确地检索foo。有没有更好的方法来解决这个问题?

1 个答案:

答案 0 :(得分:1)

使用此:

<xsl:value-of select="/a/b/c[@num='2']" />

完整示例:

的xsl:

<?xml version="1.0"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
    <xsl:template match="/">
        <xsl:value-of select="/a/b/c[@num='2']" />
    </xsl:template>
</xsl:stylesheet>

的xml:

<?xml version="1.0"?>
<a>
  <b> 
    <c num="2">foo</c>
    <c num="3">bar</c>
  </b>
</a>