XSLT 通过字符串获取属性

XSLT Get attribute by string

我想知道是否可以通过对 XML 元素的字符串查询来获取 attr 值。示例:

<xsl:variable name="astr">
color
</xsl:variable>

<xsl:value-of select="$treeItem/@$astr"></xsl:value-of> 

这意味着:

$treeItem/@$astr   results in ---> $treeItem/@color

这可能吗?

您设置变量的方式甚至不是字符串,而是结果树片段或临时树。

要获得您需要的字符串,例如<xsl:variable name="astr" select="'color'"/>.

至于通过变量中的名称选择属性,请使用 $treeItem/@*[local-name() = $astr]