如何解决 登陆时验证正则 第二次会显示不符合正则规则的问题。
在执行验证的函数中添加 namere.lastIndex =0; 就可以解决。如:
ainput[0].onblur = function (){
namere.lastIndex =0;
checkName();
}
function checkName (){
if(namere.test(ainput[0].value)){
awaring[0].innerHTML="<i class='right'></i>用户名合法";
awaring[0].style.color="green"
}
else if (ainput[0].value.length<5){
awaring[0].innerHTML="<i class='wrong'></i>用户名最短为5位字符";
awaring[0].style.color="#FF8247";
}
else if(ainput[0].value.length>12){
awaring[0].innerHTML="<i class='wrong'></i>用户名最多为12位字符";
awaring[0].style.color="#FF8247";
}
else {
awaring[0].innerHTML="<i class='wrong'></i>请输入合法字符";
awaring[0].style.color="#FF8247";
}
}