我对XSL数字格式化功能有一个奇怪的问题。功能会 如果我没有两个元素,则返回NaN。
我使用的是XSLT 1.0版和libxslt XSLT处理器。
Exemptigratia
这不会返回数字
<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值。