在XSLT中选择当前元素名称

时间:2010-01-28 12:44:37

标签: xslt xpath

我需要输出在应用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,以便我可以获取元素名称而不是当前值

1 个答案:

答案 0 :(得分:16)

<xsl:value-of select="name()" />

旁注:避免使用//速记,除非你绝对没有其他可能性。它似乎快速而简单,但它不是 - 它在计算上非常昂贵,并且90%的时间你不需要它。

尽可能编写规范的替换XPath表达式。甚至像通用的东西一样 /*/*/node的运行速度比//node快得多。

相关问题