Javascript 构建有效的js/jQ';千';逗号分隔符,适用于向上键上的大数字(10^6+;)
我花了很多时间研究了针对调整用户输入字符串的问题提出的每一种解决方案,这些字符串在键入时会将大量数字格式化为逗号分隔符: 9999999999-->9999999999等等 这里有几个关于堆栈溢出的讨论: 还有更多的相关查询,我已经测试了那些我能找到的,它们对4或5次方的数字都很有效,比如12345很好 但较大的数字最终会有太多的逗号: 1、、、、0、、0、、000 例如,我当前实现的代码的输出。(它还将退格注册为按键笔划,因此当我退格三次时,它会添加一个逗号…) 然后在输入上:Javascript 构建有效的js/jQ';千';逗号分隔符,适用于向上键上的大数字(10^6+;),javascript,jquery,Javascript,Jquery,我花了很多时间研究了针对调整用户输入字符串的问题提出的每一种解决方案,这些字符串在键入时会将大量数字格式化为逗号分隔符: 9999999999-->9999999999等等 这里有几个关于堆栈溢出的讨论: 还有更多的相关查询,我已经测试了那些我能找到的,它们对4或5次方的数字都很有效,比如12345很好 但较大的数字最终会有太多的逗号: 1、、、、0、、0、、000 例如,我当前实现的代码的输出。(它还将退格注册为按键笔划,因此当我退格三次时,它会添加一个逗号…) 然后在输入上: onkey
onkeyup="this.value=numberWithCommas(this.value);"
我是否错误地使用了该功能?或者,对于更多的人来说,这根本不可行。有没有一种方法可以调整它以适用于任何大小的数字
提前感谢您只是将comas添加到一个值中,该值在第一次迭代后已为逗号。。。您只需在函数开头用逗号重置逗号即可。
numberWithCommas
:
n = n.replace(/,/g, "");
这么简单,我花了这么多时间试图解决这个问题><有一天我会理解得足够多,不必花这么长时间面对一个问题:)非常感谢-工作非常完美。只是为了好玩,你可以使用正则表达式来做:
n = n.replace(/,/g, "");