在javascript中自动为数字添加逗号?

时间:2014-11-26 11:24:25

标签: javascript

我使用以下功能在文本框中自动添加逗号(例如:124355 => 124,355)

function addCommas(num) {   
   return num.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ",");
}

我使用onKeyUp事件:

<td><input type="text" onkeyup="this.value=addCommas(this.value);"/></td>

如果我快速输入数字,这是可以的。但是,如果我慢慢输入数字,我得到以下结果:

124355 => 1,2,4,355
135298532 => 1,3,5,2,9,8,532

你可以帮我解决这个问题吗?

1 个答案:

答案 0 :(得分:2)

我猜你应该先从输入中删除所有逗号(带.replace()),然后再应用正则表达式。