<html>
  <head>
    <title>注册</title>
    <meta http-equiv="content-type" content="text/html; charset=UTF-8">
    
    
  </head>
  <script type="text/javascript">
  function checken()
  {
  var user=document.getElementById("user1").value;
  var paw=document.getElementById("paw1").value;
  var password=document.getElementById("password1").value;
  var year=document.getElementById("year1").value;
  var month=document.getElementById("month1").value;
  var day=document.getElementById("day1").value;
  var funs=document.getElementById("funs1").value;
  var infor=document.getElementById("infor1").value;
  if(user==null||paw==null||password==null||year==null||month==null||day==null||funs==null||infor==null)
  {
    alter("不能为空");
    return false;
  }
  if(user==""||paw==""||password==""||year==""||month==""||day==""||funs==""||infor=="")
  {
    alter("不能为空");
    return false;
  }
  if(pwd!=password)
  {
    alter("俩次密码不对");
    return false;
  }
  if(us<5)
  {
  alert("程序");
  return false;
  }
  
    return true;
  }
  </script>
  
  <body>
  <h3>请详细填写以下信息:</h3>
  <form action="checkEnroll.jsp" name="fm" onsubmit="return checken()" method="post">
  <center>
  <table>
    <tr>
     <td>用户名:(6-20)</td>
     <td><input id="user1" name="user"/></td>
    </tr>
    <tr>
     <td>密码:(6-20)</td>
     <td><input id="pwd1" name="pwd"/></td>
    </tr>
   <tr>
     <td>密码确认</td>
     <td><input id="password1" name="password"/></td>
    </tr>
    <tr>
     <td>出生日期:</td>
     <td>
       <input id="year1" name="year" size=4 />年
       <input id="month1" name="month" size=2 />月
       <input id="day1" name="day" size=2 />日
       </td>
    </tr>
   <tr><td>性别:</td>
    <td><input type="radio" id="sex1" name="sex" value="男" checked="checked"/>男 <input id="sex2" type="radio" name="sex" value="女"/>女 </td>
   </tr>
   <tr>
   <td>从事行业:</td>
   <td>
     <select id="work1" name="work">
      <option value="学生" checked="checked">学生</option>
     <option value="IT" >IT</option>
     </select>
   </td>
   </tr>
   <tr>
   <td>个人爱好</td>
   <td>
     <input type="checkbox" id="funs1" name="funs" value="读书" />读书<br/>
     <input type="checkbox" i="funs2" name="funs" value="上网" />上网<br/>
   </td>
   </tr>
   <tr>
   <td>个人说明</td>
   <td>
   <textarea id="infor1" rows="5" cols="15" name="infor">
   </textarea>
   </td>
   </tr>
  </table>
  <br/>
  <br/><tr><td></td><td>
  <input type="submit" vlue="注册" /><input type="reset" value="重置" /></td></tr>
  </center>
  </form>
  </body>
</html>

解决方案 »

  1.   

    你表单提交是通过这个JS来控制的吧,验证通过就提交,没通过就不提交是吧。
    既然你点了就能提交,说明JS肯定出了问题。
    表单取值问题可以这样啊:document.表单名字.文本域名字.value啊,
    判断的时候你就判断==null?就行了么?你的文本域都存在,并且都为""值,怎么能是null呢?是吧,你应该这样判断:document.表单名字.文本域名字.value==""或者document.表单名字.文本域名字.value.length()==0这样来啊,最好对那些文本域去掉空格,如果有空格提交的还是空字符串。
      

  2.   

     <script type="text/javascript">
      function checken()
      {
      
      var user= document.fm.user.value.length();
      if(user==0)
      {
       alert("错误");
       return true;
      }
      
        return true;
      }
      </script>
      
      <body>
      <h3>请详细填写以下信息:</h3>
      <form action="checkEnroll.jsp" name="fm" onsubmit="return checken()" method="post">
      <center>
      <table>
        <tr>
         <td>用户名:(6-20)</td>
         <td><input id="user" name="user"/></td>
        </tr>
    我这样写怎么还不对
      

  3.   

    还忘记告诉你了:function checken()
      {
      var user= document.fm.user.value.length();//这个地方你最好这样
      //先获取这个文本框:var utext=document.fm.user;再获取value:utext.value,加入你又要想给他赋值,你就只要utext.value=多少了,不要再搞一串很长的。
      if(user==0)
      {
      alert("错误");
      return true;//上面你都弹出错误了,为什么还要返回true呢?应该返回false啊,
      }
       
      return true;
      }