实时监测text输入框的值是否合法
<script> var input_a=document.getElementsByClassName("input-a")[0]; var input_b=document.getElementsByClassName("input-b")[0]; var countdiv=document.getElementsByClassName("count")[0]; var i_a=document.getElementsByTagName("i")[0]; var reg=/[^\w\u4e00-\u9fa5]/g; var value=null; var selfvalue=null; input_a.onfocus=function(){ i_a.style.display="block"; input_a.onkeyup=function(){ var count=countNum(this.value); countdiv.innerText=count == 0? null:count+"个字符"; if(reg.test(this.value)){ i_a.innerText="含有非法字符!"; i_a.className="warn iconerror"; } else if(this.value == ""){ i_a.innerText="不能为空!"; i_a.className="warn iconerror"; } else if(this.value.length < 5){ i_a.innerText="不能小于五个字符!"; i_a.className="warn iconerror"; } else if(this.value.length > 25){ i_a.innerText="不能大于25个字符!"; i_a.className="warn iconerror"; } else if(!reg.test(this.value)){ i_a.innerText="填写正确哦!"; i_a.className="warn iconright"; } } } function countNum(str){ var len=str.length; for(var i=0;i<str.length;i++){ if(str.charCodeAt(i) > 255){ len++; } } return len; } </script>
但是总感觉哪里不对,大佬们帮我改进一下吧