Xslt 从xsl:template传递字符串参数并在另一个xsl文件中使用 span%=“文本”%/span
不知何故,我一直在遇到XSLT问题……我所要做的就是获取变量“text”的值,即“i am a friggin RRROVERRR”,以显示在“HappyFriend”模板中的i am a frigggin’rrroovverrrr~~中 我做错了什么?几个问题: --字符串literalXslt 从xsl:template传递字符串参数并在另一个xsl文件中使用 span%=“文本”%/span,xslt,Xslt,不知何故,我一直在遇到XSLT问题……我所要做的就是获取变量“text”的值,即“i am a friggin RRROVERRR”,以显示在“HappyFriend”模板中的i am a frigggin’rrroovverrrr~~中 我做错了什么?几个问题: --字符串literal“我是个该死的”rrrrrr ooooo vvverrrr~~“包含不平衡的单引号。你可能想要 <xsl:template match="HtmlCode"> <xsl:copy-of
“我是个该死的”rrrrrr ooooo vvverrrr~~“
包含不平衡的单引号。你可能想要
<xsl:template match="HtmlCode">
<xsl:copy-of select="child::*|text()"/>
</xsl:template>
<xsl:call-template name="HappyFriend">
<xsl:with-param name="text" select="'i am a friggin' RRRRROOOOOOOVVVERRRRR~~'"/>
</xsl:call-template>
<xsl:template name="HappyFriend">
<xsl:param name="text"/>
<HtmlCode>
<span> <%="text"%> </span>
</HtmlCode>
<xsl:template>
有关参数,请参见
<span> <%="<xsl:value-of select="$text"/>"%> </span>
这里有一个正确的方法来做我想你想做的事情:
<xsl:template name="HappyFriend">
<xsl:param name="text"/>
<HtmlCode>
<span>
<xsl:value-of select="$text"/>
</span>
</HtmlCode>
<xsl:template>
<HtmlCode/>
当此转换应用于以下XML文档时(未提供!!!):
生成所需的正确结果:
<xsl:template name="HappyFriend">
<xsl:param name="text"/>
<HtmlCode>
<span>
<xsl:value-of select="$text"/>
</span>
</HtmlCode>
<xsl:template>
<HtmlCode/>
我是一个该死的人~~
如果愿意,还可以使用“…”而不是“…”,或者使用,然后稍后再传递该值。例如,结账后
<HtmlCode>
<span>i am a friggin' RRRRROOOOOOOVVVERRRRR~~</span>
</HtmlCode>