2012-08-03 47 views
3
<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> 

不知何故,我不斷收到XSLT問題......我所要做的就是獲取變量「text」的值,即「我是一個frigggin RRROVERRR「出現在」HappyFriend「模板中的frigggggin'RRROOOVVVERRRR ~~中。從xsl:template傳遞一個字符串參數並在另一個xsl文件中使用它

我在做什麼錯了?

回答

7

幾個問題:

- 字符串字面'i am a friggin' RRRRROOOOOOOVVVERRRRR~~'包含不平衡的單引號。您可能想要

<xsl:with-param name="text" select='"i am a friggin&#x27; RRRRROOOOOOOVVVERRRRR~~"'/> 

- call-template不能出現在模板定義之外。

- 要引用你應該使用value-of-select參數,如

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

也可以用「如果您更喜歡 或使用,然後稍後傳遞該值。 Checkout https://clipflair.codeplex.com/SourceControl/latest#Server/ClipFlair.Gallery/collection/activities_list.xsl例如在後面 – 2014-09-08 17:03:33

1

看到FAQ的參數

<xsl:template name="HappyFriend"> 
     <xsl:param name="text"/> 
     <HtmlCode> 
      <span> 
       <xsl:value-of select="$text"/> 
      </span> 
     </HtmlCode> 
    <xsl:template> 
1

這裏是做什麼,我想你一個正確的方法想要:

<xsl:stylesheet version="1.0" 
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> 
    <xsl:output omit-xml-declaration="yes" indent="yes"/> 
    <xsl:strip-space elements="*"/> 

    <xsl:template match="HtmlCode"> 
     <xsl:copy-of select="child::*|text()"/> 
     <xsl:call-template name="HappyFriend"> 
      <xsl:with-param name="text" select='"i am a friggin&apos; RRRRROOOOOOOVVVERRRRR~~"'/> 
     </xsl:call-template> 
    </xsl:template> 
    <xsl:template name="HappyFriend"> 
     <xsl:param name="text"/> 
     <HtmlCode> 
      <span><xsl:value-of select="$text"/></span> 
    </HtmlCode> 
    </xsl:template> 
</xsl:stylesheet> 

下面的XML文檔應用這種轉變(無已提供了!!!):

<HtmlCode/> 

的希望,產生正確的結果:

<HtmlCode> 
    <span>i am a friggin' RRRRROOOOOOOVVVERRRRR~~</span> 
</HtmlCode> 
相關問題