课程
/前端开发
/JavaScript
/表单验证
先是正则表达式[^\d],然后是if条件中if(!re_n.test(this.value))。为什么不能直接\d ,if(re_n.test(this.value))?
2015-08-04
源自:表单验证 6-1
正在回答
想明白了,来自己答一下。
当直接使用\d的时候,如果value值为1abcdef,那么test()函数为true,if中的条件判断也会为true。
而当使用[^\d]的时候,如果value的值为123456,那么test()函数为false,if中的条件判断就会为true;
如果value的值为123456f,即至少有一位不为数字,那么test()函数就会匹配到这个不为数字的一位字符,test()函数值为true,if中的条件判断就会为false。
举报
表单验证是JavaScript中的高级选项之一,输入框的验证