onsubmit先执行,如果过返回true则action执行
否则action不执行

解决方案 »

  1.   

    为什么我的判断函数没有返回“真”也执行了action了呢?为什么?
    function valid(form1)
    {
    if((form1.StuCode.value==""))
    {
      alert("用户名不能为空!");
      form1.StuCode.focus();
      return false;
     }
    else if((form1.Password.value==""))
    {
      alert("密码不能为空!");
      form1.Password.focus();
      return false;
    }
    else
    {
     return true;
     }
      

  2.   


    你可以改一下就可以实现了
    <form method="post" name="F_Login" action="login.jsp">
    <input type=button name=999 onclick="valid(form1)">
    </form>
    function valid(form1)
    {
    if((form1.StuCode.value==""))
    {
      alert("用户名不能为空!");
      form1.StuCode.focus();
      return false;
     }
    else if((form1.Password.value==""))
    {
      alert("密码不能为空!");
      form1.Password.focus();
      return false;
    }
    else
    {
    form1.submit();
     return true;
     }
    这样就可以实现了
      

  3.   

    还是不行,到是执行了前面的话可是还执行了后面的jsp文件。因为我的JSP中有一个判断:
    if (!StuCode.equals(""))
       {
         // 定义打开数据库连接的函数
            ...
        // 连接数据库
           ...
        }
    else
    {
       out.println("input code")
    }
    最后还是打出了“input code"。
      

  4.   

    把你的input类型由submit变为button就行了