【发布时间】:2010-09-29 18:21:39
【问题描述】:
我正在尝试根据传入的数据显示不同的信息。如果是整数,我只想显示数字,如果是小数,我想使用 0.00# 模式。是的,我知道,有点混淆,但这是开发规范。 :>
我在这个特定部分有以下 XSL,但我看不到 xsl:when 的错误消息
"预期的表达式结束,找到 '浇注料'。数字(SAVG)->可铸造
<xsl:choose>
<xsl:when test="number(SAVG) > 0">
<xsl:choose>
<xsl:when test="number(SAVG) castable as xs:decimal">
<xsl:value-of select="format-number(SAVG, '###,###,##0.00#')"/>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="format-number(SAVG, '###,###,##0.###')"/>
</xsl:otherwise>
</xsl:choose>
</xsl:when>
<xsl:when test="number(SAVG) = 0">
<xsl:text disable-output-escaping="yes">&lt;</xsl:text>1
</xsl:when>
<xsl:otherwise>N/A</xsl:otherwise>
</xsl:choose>
我尝试寻找/寻找答案,我尝试过“实例”,我尝试过使用 xsl:if 等,但我似乎无法让它工作。任何帮助将不胜感激。
谢谢。
来自 cmets:
是的,我们使用的是 1.0。对不起我是 刚接触 XSL 处理,我该怎么做 粘合您的 XSL 和输入以生成 html?
【问题讨论】:
-
这是 XSLT 2.0。如果您使用 XSLT 1.0 处理器运行它,请这样说。
-
好问题 (+1)。有关简短而完整的 XSLT 2.0 解决方案,请参阅我的答案。
-
我已在我的答案中添加了 XSLT 1.0 解决方案。
标签: xslt