2009-11-11 76 views
0

我需要你在以下情況下幫助:如何在不同範圍內連接兩個變量?

<xsl:variable name="var1" select="'SOME_DATA1'" /> 
<xsl:if test="'some_condition'"> 
       <xsl:variable name="var2" > 
        <xsl:value-of select="'SOME_DATA2'"/> 
       </xsl:variable> 
</xsl:if> 
<data> <!-- I need here to contact var1 with var2, please help --> </data> 

感謝。

回答

3

如何:

<data> 
    <xsl:variable name="var1" select="'SOME_DATA1'" /> 
    <xsl:text><xsl:value-of select="var1"/></xsl:text> 
    <xsl:if test="'some_condition'"> 
    <xsl:variable name="var2" > 
     <xsl:value-of select="'SOME_DATA2'"/> 
    </xsl:variable> 
    <xsl:text><xsl:value-of select="var2"/></xsl:text> 
    </xsl:if> 
</data> 

這就是你寫的,VAR2不使用/ XSL後存在:如果。

另一種方法是這樣的:

<xsl:variable name="var1" select="'SOME_DATA1'" /> 
<xsl:variable name="var2" > 
    <xsl:if test="'some_condition'"> 
    <xsl:value-of select="'SOME_DATA2'"/> 
    </xsl:if> 
</xsl:variable> 
<data> <!-- Use var1 and var2 here --> </data> 

這樣,你具備條件的VAR2 regarardeless,但如果條件爲假它是空的。在條件之後你仍然有變量。

+0

+1方式#2。你的第一個建議有點可怕。 – Tomalak 2009-11-11 17:03:38

+0

我認爲#1不允許我們將#2中的空數據。 – 2009-11-11 17:54:54

+0

我承認在#1中根本沒有太多的使用變量的點......但是如果變量是唯一的變量,我認爲#1沒有實際的變量(也就是把表達式放在xsl:text/xsl:value-of)是要走的路。 – 2009-11-11 19:18:32