/^[^\u4e00-\u9fa5]{2,8}$/.test(username)
正则就这样子 你自己整合下{2,8}表示2--8个汉字

解决方案 »

  1.   

    在form里写的是如下的代码
    <form action="www.sohu.com" method="post" onsubmit="return check()">
    这样是不是会在点击按钮时执行JS里的check()函数,然后页面跳转到www.sohu.com这个页面(并用post方式传相关参数)?
      

  2.   


    先执行check函数,并根据函数的返回的真假 来决定是不是跳转到www.sohu.com
      

  3.   

    if(!count3.match(regm)&&count3!="")把!="" 去掉.试试.
      

  4.   

    去掉!="" 也不行啊,就是加了下面这些代码,然后表单里什么都不填写,就按提交按钮的话,也不会出现alert窗口,如果不加下面代码就没事,可是我想要对姓名,邮箱等做判断,不知道该如何写var count1 = document.getElementById("name").value; 
    var count3 = document.getElementById("mail").value; 
    var regm = /^[a-zA-Z0-9_-]+@[a-zA-Z0-9_-]+(\.[a-zA-Z0-9_-]+)+$/;//验证Mail的正则表达式,^[a-zA-Z0-9_-]:开头必须为字母,下划线,数字, 
    if(!count3.match(regm)&&count3!="") 

    alert("邮箱地址格式错误或含有非法字符!\n请检查!"); 
    return false; 

    if(count1.length <4 || count1.length>12) 

      alert("姓名长度为4~12位,由字母,汉字和数字组成!"); 
      return false; 
    }