如何对数字格式#,###。##求和

|| 大家好, 在哪里可以求和xsl:stylesheet version = \“ 1.0 \”中格式为1,185.00的数字? 例如:
<document>
 <number>1,185.00</number>
 <number>2,000.11</number>
</document>
结果应该是:
<document>
 <sum>3185.11</sum>
<document>
已邀请:
检索resp时,您可以尝试使用
translate
format-number
。显示数据时。 我在想sg。像这样:
<?xml version=\"1.0\"?>
<xsl:stylesheet version=\"1.0\" xmlns:xsl=\"http://www.w3.org/1999/XSL/Transform\">
    <xsl:output method=\"xml\" version=\"1.0\" encoding=\"UTF-8\" indent=\"yes\"/>
    <xsl:strip-space elements=\"*\"/>

    <xsl:template match=\"/\">
        <document>
            <xsl:apply-templates select=\"document/number[1]\">
                <xsl:with-param name=\"val\" select=\"0\"/>
            </xsl:apply-templates>
        </document>
    </xsl:template>

    <xsl:template match=\"number\">
        <xsl:param name=\"val\"/>
        <xsl:choose>
            <xsl:when test=\"not(following::number)\">
                <sum>
                    <xsl:value-of select=\"format-number($val + translate(./text(),\',\',\'\'), \'###.##\')\"/>
                </sum>
            </xsl:when>
            <xsl:otherwise>
                <xsl:apply-templates select=\"following::number\">
                    <xsl:with-param name=\"val\" select=\"$val + translate(./text(),\',\',\'\')\"/>
                </xsl:apply-templates>
            </xsl:otherwise>
        </xsl:choose>
    </xsl:template>
</xsl:stylesheet>
为您的输入生成以下输出:
<?xml version=\'1.0\' encoding=\'UTF-8\' ?>
<document>
    <sum>3185.11</sum>
</document>

要回复问题请先登录注册