如何使用变量按名称访问节点

时间:2016-08-31 20:52:50

标签: xslt xslt-1.0

您如何使用变量指定元素?具体来说,我有以下模板:

<xsl:template match="status" mode="status_summary">
  <div id="{@MSN}_{@IC}_{@ID}" class="hidden status_summary">
    <xsl:apply-templates select="group" mode="status_summary"/>
    <p>
    <button style="width:100%" onclick="showhide('{@MSN}_{@IC}_{@ID}')" >Hide</button>
    </p>
  </div>
</xsl:template>

我想让这个模板更通用,以便我可以根据需要指定不同的属性,也可以指定基本上用作唯一键的不同数量。

e.g。我可能希望使用@MSN@ID或任何其他组合,而不是硬编码@IC@MSN@USER

感谢。

1 个答案:

答案 0 :(得分:1)

在XSLT 1.0(或2.0)中执行此操作并不是一种优雅的方法,除非您的处理器支持某种evaluate()函数作为扩展。

一种可能的方法是:

@*[name()=$variable]
相关问题