猿问

js 处理用户输入

搜索框,验证是否有非法字符,我是这么写的

  for(i=0;i<srch.value.length;i++)                   

 {                       

    n = srch.value.charCodeAt(i);                       

       if(!((n>=48&&n<=57)||(n>=65&&n<=90)||(n>=97&&n<=122)||n==95||n<=38&&n>=35)||(n >225))       

                 {                

                alert("您输入的查询中有非法字符!");                        

        srch.focus();                        

        return false;                        

       }     

     }

但是这个判断不能通过输入中文,小弟实在对js不甚了解,不知道怎么处理中英文及其他字符混合的处理,希望高手指点一下,有劳了·

互换的青春
浏览 516回答 3
3回答

慕桂英3389331

使用正则表达式更方便啊 /^\w+$/.test('验证的字符')

DIEA

//这事判断用户名中是否有非法字符的一段js代码,楼主你看看,看看能不能给你点思路Q~~ accoutValue=regForm.account.value for (i=1;i<accountValue.length;i++) { if (accountValue.charAt(i)<'a' || accountValue.charAt(i)>'z') { switch (accountValue.charAt(i)) { case '_': case '.': case '~': break; default: alert ("用户名中含有非法字符\""+accountValue.charAt(i)+"\"!"); regForm.account.focus(); regForm.account.value=""; return false; break; } //switch } //if 

手掌心

使用正则表达式吧,比较方便的,你可以试试,网上哟很多现成的表达式 if(!/^\w+$/.test(uname)) //用户名只能是数字、字母和下划线组成 { alert("用户名只能是数字、字母和下划线组成,请重新输入"); form1.uname.value=""; form1.uname.focus(); return false; }
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答