2012-08-14 31 views
3

EXSLT标记器内的每个循环内的当前节点上下文是什么?我似乎无法查询文档中的任何节点。例如:EXSLT字符串标记器上下文

<xsl:for-each select="str:tokenize($renderList,',')"> 
    <xsl:variable name ="tag" select="."/> 
    <xsl:value-of select = "//tag[@name = $tag]"/> 
</xsl:for-each> 

如果我硬编码<xsl:value-of select = "//tag[@name = 'A']"/>出侧for-each循环,查询工作。

什么是循环内的上下文节点?

回答

4

问题是在xsl:for-each当前文档不是原始源XML文档

这应该工作:

<xsl:variable name="vDoc" select="/"/> 
<xsl:for-each select="str:tokenize($renderList,',')"> 
    <xsl:variable name ="tag" select="."/> 
    <xsl:value-of select = "$vDoc//tag[@name = $tag]"/> 
</xsl:for-each> 
+0

@ srini.venigalla,欢迎您。 – 2012-08-14 03:39:25