2013-06-19 141 views
0
我有一些问题与下面的xsl命令

XSL节点选择由属性值

<xsl:value-of select="./a/b/c[@code='$codeVal']" /> 

codeVal是保持从XML的一些其它部分中的另一属性的值的变量。 以上声明不起作用。调试表明,$ codeVal变量不包含有效/正确的值

但是,如果我硬编码值,那么一切都只是正常工作

例如,下面的语句的工作:

<xsl:value-of select="./a/b/c[@code='one']" /> 
<xsl:value-of select="./a/b/c[@code='two']" /> 

任何人都可以提出上述声明有什么问题?

谢谢

回答

0

发现的问题,我要引用变量不包括引号。

而是$ codeVal的单引号:

xsl:value-of select="./a/b/c[@code='$codeVal']" /> 

我应该以下列方式写的语句:

xsl:value-of select="./a/b/c[@code=$codeVal]" />