js 检查是否有非法字符的代码

发布时间:2020-11-15编辑:脚本学堂
本文介绍下,用js检查字符是否合法的一段代码,有需要的朋友参考下。

javascript代码检查字符是否合法,如下:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>检查是否含有非法字符--www.jb200.com</title>
<script language="javascript" type="text/javascript" >
/*
1、定义合法的字符串(源字符串)
2、获取用户输入的内容
3、循环的取出用户输入的每一个字符,去源字符串中查找
1)查找到了  返回 该字符在源字符串中出现的位置
2)没有查找到,返回 -1 ,我们正好利用这个-1判断用户输入的内容是否合法
 */
function check(){
//获取用户输入的内容
var username=document.getElementById("username").value;
//根据用户输入的内容,检测是否非法
if(jiance(username)){

alert("输入有问题?");
    }else{

alert("输入正常!");
}
}
//根据用户输入的内容,检测是否非法
function jiance(inputstr){
var flag=false;
//定义一个源字符串
var str="abcdefghijklmnopqrstuvwxyz1234567890-_";
//存储每次取出的一个字符
var c1="";

for(var i=0;i<inputstr.length;i++){

  //循环取出用户输入的单个字符
  c1=inputstr.toLowerCase().charAt(i);
  
  //如果小于0,表示没有在源串中找到,则输入是非法的
  if(str.indexOf(c1)<0){
  
  flag=true;
  break;
}
}
return flag;
}
</script>
</head>
<body>
用户名:<input type="text" id="username"  /> <input type="button" value="检测" onclick="check()" />
</body>
</html>