这段代码只能限制输入正整数,那位大哥帮忙修改成可以输入负整数咯!谢谢!
<td align="center"><input type="text" size="8" name="xzrk" value="" onkeyup="this.value=this.value.replace(/\D/g,'')" onafterpaste="this.value=this.value.replace(/\D/g,'')"/></td>
this.value.replace(-?[1-9]\d*$,'') 这样改为什么不行呢???
同时兼容了小数。
追问大哥,这个替换功能好像没有起作用,还是可以输入字母啊!你试试!!
追答哦, 看错了,改成这样:
this.value.match(/[+-]?\d+/g).join('');会将原始输入中的所有非整数内容(包括小数点,不包括整数前的“+”或“-”号)删除,执行结果示例:
输入“abc-123.45ef--67ghi+890”得到“-12345-67+890”
如果要做到更好的禁止输入不允许字符的效果,建议在keydown事件中进行拦截。
追问也不知道咋回事,还是不行,但上面那兄弟的代码可以实现!谢谢了啊!