如何通过js限制用户在input text中只能输入数字和"-"号?

做.net用户注册页面的时候我想写一个js脚本函数,在用户填写电话号码时调用,限制用户只能输入数字和负号,这样用户只能输入数字和电话号码的分割符了.该如何解决?最好是能够采用 类似这样的办法直接限制输入onkeyup="value=value.replace(/[^a-z0-9_]/g,'')"

<input type='text' onkeyup="this.value=this.value.replace(/[^0-9-]+/,'');" />
这是你想要的结果,不过我建议改成:
<input type='text' onkeyup="(this.v=function(){this.value=this.value.replace(/[^0-9-]+/,'');}).call(this)" onblur="this.v();" />
就是在失去焦点时也进行验证,因为可以用输入法输入汉字(用鼠标选取汉字)或者用鼠标进行粘贴操作
温馨提示:内容为网友见解,仅供参考
第1个回答  2015-10-10
可以通过绑定keyup来实现
每次keyup响应后过滤input的内容,删除非【数字和-】的内容
相似回答