function isAll(str)
{
 var reg =/^[0-9a-z \u4e00-\u9fa5]+$/gi;
 //var reg =/^([\u4E00-\u9FA5]{3,10}|[\uFE30-\uFFA0]|[_\a-zA-Z0-9]{6,20}|[\s])*$/gi;
 var childsss = str.parentNode.getElementsByTagName("span");
 var childss = str.parentNode.getElementsByTagName("ul");
 var childs = str.parentNode.getElementsByTagName("ol");
 var isChecked = str.parentNode.getElementsByTagName("dd");
 var count_cn = 0;
 var count_else = 0;
 if(str.value == "")
 {
  childsss[0].style.display = "none"
 }
 else if(str.value != "")
 {
  for (var i=0;i<str.value.length;i++)
  {
   if (str.value.charAt(i).match(/\W/)&&str.value.charAt(i).match(/\S/))
   {
    count_cn = count_cn + 2;
   }
   else
   {
    count_else = count_else + 1;
   }
  }
  var res = count_cn+count_else;
  if(res<6 || !reg.test(str.value))
  {
   childs[0].style.display = "none"
   childsss[0].style.display = "none"
   childss[0].style.display = "block"
   str.className = "reg_inputs"
  }
  else
  {
  
  $.post("/ajax_reg.jsp",
  {usr:getId("usrInput").value },
  function(data){
  //  alert(data);
    if(data.indexOf("1")!=-1){
    //恭喜您,用户名可以注册!
      childsss[0].style.display = "block"
   childs[0].style.display = "none"
   childss[0].style.display = "none"
   isChecked[0].style.display = "none"
   str.className = "reg_input"
    }
 if(data.indexOf("0")!=-1){
  //"对不起,该用户名已经被注册!";
            childsss[0].style.display = "none"
   childs[0].style.display = "none"
   childss[0].style.display = "none"
   isChecked[0].style.display = "block"
   str.className = "reg_inputs"
 }  },"text");
   
  
  
   
  }
 }
}以上代码是验证注册时,填写的用户名是否合理,要控制在6-16个字符,不能有特殊符号,并且用户名不能重复。
reg =/^[0-9a-z \u4e00-\u9fa5]+$/gi; 这是什么意思,是安装什么规则写的?
$.post("/ajax_reg.jsp",
{usr:getId("usrInput").value },
这个是什么意思?
 if(data.indexOf("1")!=-1) 这个也不明白。望大侠指点

解决方案 »

  1.   


    reg =/^[0-9a-z \u4e00-\u9fa5]+$/gi;
    //上面这个应该是只能输入数字、小写字母和汉字
    $.post("/ajax_reg.jsp",{usr:getId("usrInput").value },
    //这个是post方式是获得ajax_reg.jsp中id为usrInput里面的值,赋给变量usr
    if(data.indexOf("1")!=-1)
    //这个是变量data里面必须有个字符为"1"
    应该是这样的。
      

  2.   


    reg =/^[0-9a-z \u4e00-\u9fa5]+$/gi;
    字符串以数字和大小写字母以及汉字组成,后面跟了匹配模式i,因此大小写字母均可以{usr:getId("usrInput").value }
    //这个是post方式是获得ajax_reg.jsp中id为usrInput里面的值,赋给变量usr
    ---确切的说是构建一个post的参数数据对象,该对象只包含一个user属性,且值为以usrInput元素的值