<input id="htxtTotalAllowance{position()}" name="TotalAllowance" style="width:80px" ><xsl:attribute name="readonly"></xsl:attribute><xsl:attribute name="value" ><xsl:value-of select="format-number(TotalAllowance,'#,###')" /></xsl:attribute></input>
在这段xslt中目的是将从数据库中读到的数值转化为用逗号三位数分割的方式,也就是将1000 分割为1,000
但是当数据库中值是null时,出现的结果是NaN,有没有能够解决方法 啊,各位大侠,请支招
我看网上用的是<xsl:decimal-format NaN="0" /> 但是我不知道加的位置不对还是写错了,xmlt代码直接不能运行??
小弟分值不多了,还请各位大侠谅解
------解决方案--------------------
你可以
1.但是我不知道加的位置不对还是写错了
re:
http://www.nedcomp.nl/support/origdocs/xml4/extracted/xsl_elm_af_5pbo.aspx?ntp=1
2.可以用xsl:if保证进入格式化的值是数字
------解决方案--------------------
我写了一个你看看:
xml文件:
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="number.xsl"?>
<text>
<t>213123456</t>
<t>456456789</t>
<t>2457421544</t>
</text>
xsl文件:
<?xml version='1.0'?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output indent="yes" method="html"></xsl:output>
<xsl:decimal-format name="euro" decimal-separator="." grouping-separator=","/>
<xsl:template match="/">
<html>
<body>
<xsl:for-each select="text/t">
<xsl:value-of select="format-number(./text(), '#,###.00', 'euro')"/><br></br>
</xsl:for-each>
</body>
</html>
</xsl:template>
</xsl:stylesheet>