3

EXSLT Tokenizer for-eachループ内の現在のノードコンテキストは何ですか?ドキュメント内のノードをクエリできないようです。例:

<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

1 に答える 1

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>
于 2012-08-14T02:16:51.817 に答える