只能输入数字的文本框案例中,如果使用输入法就可以输入非数字
回答
筱竹回答
问题分析
案例中使用keycode值来判断输入的是否为数字,是不严谨的,应该使用正则表达式进行匹配。
问题解决办法
<input type="text" onkeyup="if(!/^\d+$/.test(this.value)) { this.value='';}" />
/*
if判断语句中的意思为:
/ / 两个斜杠表示要在这里面写正则表达式的匹配规则, !表示非 , ^ 表示匹配开头 $表示匹配结尾 \d 表示匹配一个数字字符。等价于[0-9] + 表示匹配一个或多个,连起来的意思是 ,匹配this.value 获取这个非数字的字符,this.value='' 把这个值清空。
*/
(0)