0

我对 XSL 数字格式化功能有一个奇怪的问题。如果我没有两个元素,该函数将返回 NaN。

我正在使用 XSLT 1.0 版和 libxslt XSLT 处理器。

范例

这将不会返回数字

<Weight><xsl:value-of select='format-number(weight, "#.00")'/></Weight>

但是,如果我这样做

<Weight><xsl:value-of select='format-number(weight, "#.00")'/></Weight>
<Weight><xsl:value-of select="weight"/></Weight>

我得到返回的值。

什么可能导致这种行为?

提前致谢!

编辑

我发现我可以在 XSLT 中进行 PHP 函数调用,所以我使用 PHP number_format 函数来获得所需的结果。

<xsl:value-of select="php:functionString('number_format', weight, 2, '.', '')"/>

它解决了我的问题,但没有回答我关于为什么 XSLT 格式数字函数返回 NaN 值的问题。

4

0 回答 0