我的数据结构如下:
<url title="Stack Overflow">http://stackoverflow.com/</url>
<url>http://example.com/</url>
title属性是可选的。我有一个XSLT样式表,包括:
<xsl:template match="url">
<a href="{.}"><xsl:value-of select="(@title | .)[1]"/></a>
</xsl:template>
如果有标题,我想显示标题,否则显示网址。但由于某种原因,标题永远不会显示。 (在每种情况下都会显示网址。)
我做错了什么?
谢谢!
答案 0 :(得分:3)
尝试:
inspect
或:
<xsl:value-of select="(@title | text())[1]"/>
解释:
表达式中的<xsl:value-of select="(@title | .)[last()]"/>
缩写表示.
元素本身,它以文档顺序排列在其属性之前。