通常都直接用:
<input type="text" name="" id="box" onkeyup="value=value.replace(/[^\d]/g,'')"/>
以上的缺点是,当你正确输入的是一串数字后,想用光标移动到前面修改其中的一个数字,发现移不动,所以就显示了下面的方法的好处
其实加个if更加和谐:
$('input#box').keyup(function(){ var c=$(this); if(/[^\d]/.test(c.val())){//替换非数字字符 var temp_amount=c.val().replace(/[^\d]/g,''); $(this).val(temp_amount); } })
上面的函数使用了jquery的选择器,大家注意别忘了需要加载jquery。jquery下载
更多的功能可以参考这篇文章:js限制文本框只能输入数字方法小结