how to add comma in textfield in html web page
本问题已经有最佳答案,请猛点这里访问。
我有一个网页,其中我将数据输入到
1 2 3 4 5 6 7 8 9 10 | <input type="text" id="test" onBlur="addCommas()"> function addCommas(nStr){ var offset = nStr.length % 3; if (offset == 0) return nStr.substring(0, offset) + nStr.substring(offset).replace(/([0-9]{3})(?=[0-9]+)/g,"$1,"); else return nStr.substring(0, offset) + nStr.substring(offset).replace(/([0-9]{3})/g, ",$1"); } alert(addCommas("1234567")); |
我从论坛得到了这个代码...有没有人知道如何使这个功能简单,以便它只显示在输入框中,但当我得到ID值显示1000?
用这个测试你的价值:
1 2 3 | function isNumber(n) { return !isNaN(parseFloat(n)) && isFinite(n); } |
它会阻止你的NAN。
并使用@ Pete的链接知道如何使用逗号作为千位分隔符在JavaScript中打印数字
编辑关于您的评论:
然后,您可以使用
所以你的代码看起来像:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | <input type="text" id="test" onBlur="addCommas(this)"> <input type="hidden" id="testRealValue"> function isNumber(n) { return !isNaN(parseFloat(n)) && isFinite(n); } function addCommas(input){ nStr = input.value; if(!isNumber(nStr))return; document.getElementById("testRealValue").value = nStr; var offset = nStr.length % 3; if (offset == 0) input.value = nStr.substring(0, offset) + nStr.substring(offset).replace(/([0-9]{3})(?=[0-9]+)/g,"$1,"); else input.value = nStr.substring(0, offset) + nStr.substring(offset).replace(/([0-9]{3})/g, ",$1"); } |
这是jsfiddle