XSL显示子值

时间:2013-09-25 12:15:56

标签: xml xslt

我有这样的XML:

<Cities>
  <City id="1">
    <![CDATA[Paris]]>
    <Airport>
      <![CDATA[CDG]]>
      <Code value="par-cdg" />
    </Airport>
  </City>
</Cities>

当我尝试显示City值“Paris”时,它会显示“ParisCDG”。

要显示我使用:<xsl:value-of select="//xft:City[@id=1]"/>

有谁知道我怎么才能只显示当前节点值而不是孩子?

2 个答案:

答案 0 :(得分:0)

是的,因为xsl:value-of返回所谓的“字符串值”,它是元素及其所有后代的文本内容的串联。请尝试以下方法:

<xsl:value-of select="//City[@id=1]/text()"/>

答案 1 :(得分:0)

<xsl:value-of select="$Cities/City[@id=1]/text()"/>