2013-05-03 55 views
0

我已經實現了這個功能(模板):XSLT如何使用 「行」 字符( ' - ')作爲參數

<xsl:template name="insSepToFechaHost"> 
    <xsl:param name="fecha" /> 
    <xsl:param name="sep" /> 
    <xsl:variable name="anio" select="substring($fecha,1,4)" /> 
    <xsl:variable name="mes" select="substring($fecha,5,2)" /> 
    <xsl:variable name="dia" select="substring($fecha,7,2)" /> 
    <xsl:value-of select="concat($anio,$sep,$mes,$sep,$dia)"/> 
</xsl:template> 

,我把它叫做...

<fechaOperacion> 
<xsl:call-template name="insSepToFechaHost"> 
    <xsl:with-param name="fecha" select="$datOperacion/STDR2_FECOPE" /> 
    <xsl:with-param name="sep" select="-" /> 
</xsl:call-template> 

功能很簡單,收到的值就是這樣'20130502',功能將返回'2013-05-02','2013/05/02','2013 * 05 * 02'等...(取決於'sep'值)。但是,我不知道爲什麼它不工作?......如果我改變帕拉姆「月」作爲一個恆定我注意到,該功能的工作原理..

<xsl:value-of select="concat($anio,'-',$mes,'-',$dia)"/> 

能否請您給些建議?

在此先感謝

回答

1

你實際上並沒有傳遞一個常量字符串sep的時刻。

嘗試改變這一行

<xsl:with-param name="sep" select="-" /> 

爲了這個代替

<xsl:with-param name="sep" select="'-'" />