<script type="text/javascript">
 function check(){    var username=form1.username.value;
    var pwd1=form1.pwd1.value;
    var pwd2=form1.pwd2.value;
    var year=form1.year.value;
    var month=form1.month.value;
    var day=form1.day.value;
    var email=form1.email.value;
    var interest=form1.interest.value;
    
    if(username.length<6||username.length>15){
    alert("用户名长度必须在6-15位之间");
    return false;
    }
   
    if(pwd1.length<6||pwd1.length>20){
     alert("密码长度必须在6-15位之间!");
     return false;
     }
     
     if(pwd1!=pwd2)
     {
       alert("密码不匹配!");
       return false;
     }
  
     if(year.length!=4||month>13||month<1||day>32||day<1){
      alert("生日输入不正确!");
      return false;
     }
  
      if(email==""||email.indexOf("@")==-1||email.indexOf(".")==-1){
       alert("电子邮箱格式不正确!");
       return false;
      }    return true;
   } 
   </script>

解决方案 »

  1.   

    if(email=""||email.indexIOf('@')==-1)||email.indexOf('.'==-1){
    这句写得也太乱了吧?
    if(email==""||email.indexOf("@")==-1||email.indexOf(".")==-1){
      

  2.   

    程序有错误。推荐try catch 一下  然后alert出来  就知道那里错了
      

  3.   

    script里面
    if(email=""||email.indexIOf('@')==-1)||email.indexOf('.'==-1)
    ==>
    if((email == "") || (email.indexIOf('@') == -1) || (email.indexOf('.') == -1))
    最好用正则表达式<table width="36% ...> ==> width="36%"
    <td width="55%> ==> width="55%"radio中 selected ==> checkedps:让人心寒,程序写的一点都不规范,感觉很乱
      

  4.   

    改说大家都说 我再说点不该说的 LZ多个if进行判断时最好这么写 
    if(){}else if(){}else{}
      

  5.   

    人家问的是 check() 没执行,怎么都给纠正起错误来了?说实话,好像 <form action="" method="" onSubmit="return check();"></form>是没错的。
    楼主在调调....
      

  6.   

    就是因为
          if(email==""||email.indexOf("@")==-1||email.indexOf(".")==-1){
           alert("电子邮箱格式不正确!");
           return false;
          }
    这段写错了,所以check()方法根本不能用,在check()方法里面加个alert("")调试下就知道了
      

  7.   

    现在用户名、密码、年月都能检测了
    改成if((email == "") || (email.indexOf('@') == -1) || (email.indexOf('.') == -1))
    或  if(email==""||email.indexOf("@")==-1||email.indexOf(".")==-1){邮箱还是不能检测
      

  8.   

    /^([a-zA-Z\.0-9_-])+@([a-zA-Z0-9_-])+(\.[a-zA-Z0-9_-])+/同事写的正则式,借鉴下吧
      

  9.   

    楼主的提交按纽类型是<input type=submit name="Submit" value="提交">,而在<form name="form1" method="post" action="register.jsp"   onSubmit="return check();">
    这样在check后返回true或者false表单都会提交的,你可以试一下,给onSubmit="false",这样表单照样提交的,应该给<input type=submit name="Submit" value="提交">改成type=button,在他的onclick中增加你的js,同时在js的最后加上 document.form1.submit(); 另外楼主的js存在一些小错误,就是email验证中,楼上已经有人改正了 if(email==""||email.indexOf("@")==-1||email.indexOf(".")==-1){
    ,还有建议楼主不要使用document.form...这种取值的写法,可以使用document.getElementById