我试图使用参数或变量的值作为值选择内的节点名称,但到目前为止失败了..
所以我的 XML 如下。
<Data>
<Name>John Smith</Name>
<Date>28112012</Date>
<Phone>iphone</Phone>
<Car>BMW</Car>
</Data>
我的不完整 xslt 如下所示。
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
version="2.0"
exclude-result-prefixes="#all">
<xsl:param name="nodename" select="'Name'"/>
<xsl:template match="/Data">
<Output>
<xsl:value-of select="{$nodename}"/>
</Output>
</xsl:template>
</xsl:stylesheet>
理想情况下我希望输出是
<Output>John Smith</Output>
有什么方法可以使用 XSLT 来做到这一点吗? 我希望能够根据用户的选择选择适当的节点。
谢谢
SK
最佳答案
一个疯狂的猜测,请告诉我它是否有效:
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="2.0" exclude-result-prefixes="#all">
<xsl:param name="nodename" select="'Name'"/>
<xsl:template match="/Data">
<Output>
<xsl:value-of select="//*[name()=$nodename]" />
</Output>
</xsl:template>
</xsl:stylesheet>
关于variables - 如何使用参数或变量值作为节点名称?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13602967/