jQuery中的逗号格式数字 [英] Comma-formated numbers in jQuery
本文介绍了jQuery中的逗号格式数字的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我在jQuery中具有以下功能,可将数字格式化为逗号格式:
I have following function in jQuery to format the number into comma-formatted:
function CommaFormattedN(amount) {
var delimiter = ",";
var i = parseInt(amount);
if(isNaN(i)) { return ''; }
i = Math.abs(i);
var minus = '';
if (i < 0) { minus = '-'; }
var n = new String(i);
var a = [];
while(n.length > 3)
{
var nn = n.substr(n.length-3);
a.unshift(nn);
n = n.substr(0,n.length-3);
}
if (n.length > 0) { a.unshift(n); }
n = a.join(delimiter);
amount = minus + n;
return amount;
}
我在
$('.text_field1').bind("focus blur change keyup", function(){
var $el = $(this);
$el.val(CommaFormattedN($el.val()));
});
它工作正常,但是问题是,当位数从5增加时,它什么也没做.所有数字将被删除,然后重新开始.
It's working fine, but the problem is, when number of digits increase from 5, it makes nothing. All digits are deleted and it starts again.
推荐答案
- 有一个与符号有关的错误.您使用的是绝对值,而不是原始值.
- 您的代码似乎可以正常工作,您可以尝试调试调用函数的方式.
这是您的工作代码,进行了较小的编辑(与符号相关): http://jsfiddle.net/qcVDc/1/
Here is your working code with minor edit ( sign related ) : http://jsfiddle.net/qcVDc/1/
这篇关于jQuery中的逗号格式数字的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文