显示价格时,逗号值不起作用

时间:2013-01-28 08:28:30

标签: javascript parsing numbers

我遇到一个问题,显示由AJAX从PHP文件引入的价格,然后通过Javascript附加到页面。

$('.cash1').text(parseFloat(prices[0]).toFixed(2));

这个工作正常,直到返回的值为千且包含一个逗号,即1,123.34

如果可能的话,我真的希望将逗号保留在值中,但到目前为止,脚本只会返回值1.34。我尝试使用parseInt,但这似乎也以同样的方式失败。

3 个答案:

答案 0 :(得分:1)

建议你需要使用float,你需要使用replace方法:

var n = prices[0].replace(',','');
$('.cash1').text(parseFloat(n).toFixed(2));

如果您出于某种目的需要这些逗号,我建议制作一个方法,在需要时使用逗号来创建一个带逗号的字符串,并在任何时候使用数字。

答案 1 :(得分:1)

这对你好吗?

<script> 
.............
    $('.cash1').text(numberWithCommas(prices[0].toFixed(2)));
.............. 

function numberWithCommas(x) {
     var parts = x.toString().split(".");
     parts[0] = parts[0].replace(/\B(?=(\d{3})+(?!\d))/g, ",");
     return parts.join(".");
}
</script>

答案 2 :(得分:0)

你为什么要解析它?只需按原样使用(或作为字符串):

$('.cash1').text(prices[0].toString());