日期:2014-05-16  浏览次数:20405 次

js控制input控件只输入数字
我的代码
<input type="text" name="hit_value" value="" onkeyup="this.value=this.value.replace(/[^0-9\.]/,'')">

这样的话,如果我是用键盘逐个字符输入时能消除非数字符号,但是如果我按着某个键一段时间,就能输入一串相同的字符,这个bug该怎么处理
javascript 只能输入数字

------解决方案--------------------
/[^0-9\.]/g
------解决方案--------------------
这样也可以

<input type="text" name="hit_value" value="" onkeyup="this.value=this.value.replace(/[^0-9\.]/,'')" onkeydown="this.value=this.value.replace(/[^0-9\.]/,'')">


------解决方案--------------------
引用:
/[^0-9\.]/g
正解,没有全局只替换最后一次。

<input type="text" name="hit_value" value="" onkeyup="this.value=this.value.replace(/[^\d\.]/g,'')">