在home.xsl
中<xsl:template match="/Screen">
<xsl:variable name="field" select="ListOfNames[@group='1']/*[name() != 'StaticLabel']"/>
.....
<xsl:call-template name="SecondaryTemplate">
<xsl:with-param name="radiofield" select="$field"/>
</xsl:call-template>
在另一个文件中:base.xsl
<xsl:template name="SecondaryTemplate">
<xsl:param name="radiofield"/>
<xsl:for-each select="$radiofield">
<xsl:variable name="i" select="position()"/>
<xsl:text><xsl:copy-of select="@*"/> </xsl:text>
</xsl:for-each>
</xsl:template>
这是从field
访问home.xsl
中定义的SecondaryTemplate
值的正确方法吗?出于某种原因,只要xsl:text
的输出一直空着。
但是,当我在home.xsl
中执行'xsl:text'时,我可以获得field
的内容。我没有直接访问原始xml,因为它是保密的...只是能够解析内容并打印出来。