Xslt 从xsl:template传递字符串参数并在另一个xsl文件中使用 span%=“文本”%/span

Xslt 从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

不知何故,我一直在遇到XSLT问题……我所要做的就是获取变量“text”的值,即“i am a friggin RRROVERRR”,以显示在“HappyFriend”模板中的i am a frigggin’rrroovverrrr~~中

我做错了什么?

几个问题:

--字符串literal
“我是个该死的”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>
            &lt;span&gt; &lt;%="text"%&gt;   &lt;/span&gt;
        </HtmlCode>
<xsl:template>
有关参数,请参见

 &lt;span&gt; &lt;%="<xsl:value-of select="$text"/>"%&gt;   &lt;/span&gt;

这里有一个正确的方法来做我想你想做的事情:

   <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>