我想基於XML的某些信息修改樣式表的小數格式。更exaclty,我有這樣的xslt中的十進制格式的條件選擇
<?xml version="1.0" encoding="ISO-8859-1"?>
<REPORT>
<LANGUAGE>2</LANGUAGE>
<MYVALUE>123456.78</MYVALUE>
</REPORT>
一個XML我試圖定義十進制格式歐洲如果語言爲2,默認otherwse。所以我創建了以下模板
<xsl:template match="REPORT">
<xsl:if test="$language=2">
<xsl:decimal-format decimal-separator=',' grouping-separator='.' />
</xsl:if>
<xsl:value-of select ="format-number(MYVALUE,'###.###,00')"/>
</xsl:template>
因此它顯示歐洲格式或標準格式的數字。但我得到以下錯誤
xsl:十進制格式不允許在樣式表中的這個位置!
如果我嘗試將十進制格式放在模板外部,那麼我會在sthylsheet的這個位置得到xsl:if不允許的消息。我如何更改基於XML的小數格式?
感謝 何塞
是的,這有效,但由於所有的文檔應該有相同的格式,我想在文檔的開頭定義它,而不是使用選擇/每當我必須顯示一個數。 – 2010-03-12 23:20:29
@Jose:請參閱編輯。 – AxelEckenberger 2010-03-12 23:34:05