我需要输出在应用xpath表达式后返回的元素名称,例如
<xsl:for-each select="//element">
<xsl:value-of select="**{elementname}**"></xsl:value-of>
<xsl:text>:</xsl:text>
<xsl:value-of select="current()"/>
<xsl:value-of />
</xsl:for-each>
如何将{elementname}
替换为某个xpath,以便我可以获取元素名称而不是当前值
答案 0 :(得分:16)
<xsl:value-of select="name()" />
旁注:避免使用//
速记,除非你绝对没有其他可能性。它似乎快速而简单,但它不是 - 它在计算上非常昂贵,并且90%的时间你不需要它。
尽可能编写规范的替换XPath表达式。甚至像通用的东西一样
/*/*/node
的运行速度比//node
快得多。