我有一页有银行资金摘要详情,我从API获得所有这些价值。这些值未格式化,例如50000.3645656。
所以这是我的页面结构,如下所示
<span class="format">50000.3645656</span>
<span class="format">50000.3645656</span>
<span class="format">50000.3645656</span>
<span class="format">50000.3645656</span>
<span class="format">50000.3645656</span>
所以我想要的是,我想用逗号分隔所有这些值,格式为两个小数点,如50,000.36。
如何在jquery方法中使用jquery和css类格式加载页面后执行此操作。
答案 0 :(得分:6)
据我所知,你不能用纯CSS做到这一点。
但是,您可以使用JavaScript函数为您添加逗号。
我过去曾使用过这个:
function addCommas(nStr)
{
nStr += '';
var x = nStr.split('.');
var x1 = x[0];
var x2 = x.length > 1 ? '.' + x[1] : '';
var rgx = /(\d+)(\d{3})/;
while (rgx.test(x1)) {
x1 = x1.replace(rgx, '$1' + ',' + '$2');
}
return x1 + x2;
}
然后做你的jquery:
$(function(){
$(".format").each(function(c, obj){
$(obj).text(addCommas(parseFloat($(obj).text()).toFixed(2)));
});
});
答案 1 :(得分:0)
作为替代方案,为什么不使用能够很好地完成工作的小型库:
答案 2 :(得分:0)
使用:
var input = '55021.1231';
var parts = input.split('.');
var part1 = parts[0].replace(/(\d)(?=(\d\d\d)+(?!\d))/g, "$1,");
var part2 = parseFloat('0.'+parts[1]).toFixed(2);
part2=part2.split('.');
alert(part1 + '.' + part2[1]);
<强> Demo 强>