【发布时间】:2011-02-09 06:54:09
【问题描述】:
我在 jQuery 中有以下函数将数字格式化为逗号格式:
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 增加时,它什么也没有。所有数字都被删除并重新开始。
【问题讨论】:
标签: javascript jquery numbers