小编ead*_*rax的帖子

通过动态名称引用XSLT变量

我遇到了一个小问题.

XSL文件:

<?xml version="1.0" encoding="UTF-8"?> 
<xsl:stylesheet version="1.0"  
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:fn="http://www.w3.org/2005/xpath-functions"> 
<xsl:template match="/"> 


<xsl:variable name="unumericValue" select="10" />
<xsl:variable name="uanotherValue" select="8" />



<xsl:for-each select="/root/try">
<xsl:value-of select="var" />
<xsl:variable name="min"><xsl:value-of select="@minimum" /></xsl:variable>
<xsl:value-of select="@type" />
<xsl:variable name="referenceName"><xsl:value-of select='concat("u",var)' /></xsl:variable>
<xsl:value-of select="$referenceName" />
<xsl:if test='$referenceName > $min'>
<p>Do something.</p>
</xsl:if>
</xsl:for-each>

</xsl:template>
</xsl:stylesheet>
Run Code Online (Sandbox Code Playgroud)

XML文件:

<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="q1.xsl"?>
<root>
<try type="compare" minimum="9">
<var>numericValue</var>
<something>...</something>
</try>

<try type="compare" minimum="10">
<var>anotherValue</var>
<something>...</something>
</try>
</root>
Run Code Online (Sandbox Code Playgroud)

如您所见,XML文件有两个var-Elements,它们应与XSLT-File中的变量匹配.但是我不知道哪个语法是正确的.$ referenceName只是我想要使用的变量的名称.但我不知道如何将名称引用到现有变量.

xml xslt

6
推荐指数
2
解决办法
1万
查看次数

标签 统计

xml ×1

xslt ×1