<script type="text/javascript">
function checkForm(){
var a=true;
$('cno_error').innerHTML = "";
if(adtea.selcno.value=="-1"){
$('cno_error').innerHTML = "所属科目没选";
adtea.selcno.focus();
a =false;
}
return checkTname() && checkTnum(tnum) && validatePwd(f) && checkSame(pwd1,pwd)&& a;
}


            
            function checkTname(){
             $('tname_error').innerHTML = "";
             if(adtea.tname.value==""){
             $('tname_error').innerHTML = "输入教师姓名";
             adtea.tname.focus();
     return false;
             }
             return true;
            }
            
            function checkTnum(tnum){
             $('tnum1_error').innerHTML = "";
             var value = tnum.value.strip();
             if(value==""){
             $('tnum1_error').innerHTML = "输入教工号";
             adtea.tnum.focus();
     return false;
             }
             return true;
            }
            
            function validatePwd(f){
                $('pwd_error').innerHTML = "";
                var value = f.value.strip();
                if (value.length < 5) {
                    $('pwd_error').innerHTML = "密码必须不小于5位";
                    return false;
                }
                return true;
            }
            
            function checkSame(pwd1,pwd){
             $('pwd1_error').innerHTML = "";
             var value=pwd1.value.strip();
             if(value!=pwd){
             $('pwd1_error').innerHTML = "密码不一样";
             return false;
             }
             return true;
            }
            
            
</script>js验证已经提示错了,为什么此页面还提交了

解决方案 »

  1.   

    你的 html 事件触发怎么写的?贴上来
      

  2.   

    alert( checkTname() && checkTnum(tnum) && validatePwd(f) && checkSame(pwd1,pwd)&& a);
    弹出了什么 ?
      

  3.   


    <%@page contentType="text/html;charset=utf-8"%>
    <%@include file="../common/taglib.jsp"%><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html>
    <head>
    <title>无忧考试 – 考试无忧</title>
    <%@include file="../common/common.jsp"%>
    </head>
    <body>
    <!-- 头部开始 -->
    <%@include file="../common/adHead.jsp"%>
    <!-- 头部结束 -->
    <hr/>
    <script type="text/javascript">
    function checkForm(){
    var a=true;
    $('cno_error').innerHTML = "";
    if(adtea.selcno.value=="-1"){
    $('cno_error').innerHTML = "所属科目没选";
    adtea.selcno.focus();
    a =false;
    }
    return checkTname() && checkTnum(tnum) && validatePwd(f) && checkSame(pwd1,pwd)&& a;
    }


                
                function checkTname(){
                 $('tname_error').innerHTML = "";
                 if(adtea.tname.value==""){
                 $('tname_error').innerHTML = "输入教师姓名";
                 adtea.tname.focus();
         return false;
                 }
                 return true;
                }
                
                function checkTnum(tnum){
                 $('tnum1_error').innerHTML = "";
                 var value = tnum.value.strip();
                 if(value==""){
                 $('tnum1_error').innerHTML = "输入教工号";
                 adtea.tnum.focus();
         return false;
                 }
                 return true;
                }
                
                function validatePwd(f){
                    $('pwd_error').innerHTML = "";
                    var value = f.value.strip();
                    if (value.length < 5) {
                        $('pwd_error').innerHTML = "密码必须不小于5位";
                        return false;
                    }
                    return true;
                }
                
                function checkSame(pwd1,pwd){
                 $('pwd1_error').innerHTML = "";
                 var value=pwd1.value.strip();
                 if(value!=pwd){
                 $('pwd1_error').innerHTML = "密码不一样";
                 return false;
                 }
                 return true;
                }
                
                
    </script>

    <div class='your_position'>
    您现在的位置:&nbsp;
    <a href='startSelect.do'>登录选择</a> &gt;&gt;
    <a href='adLoginForm.do'>管理员登录</a> &gt;&gt;
    <a href='adManTeaStu.do'>用户信息</a> &gt;&gt;
    <font style='color: #cc3300'><strong>新建教师信息</strong> </font>
    </div>
    <form action="adNewTea.do" method="post" name="adtea"  onsubmit="return checkForm(this);">
    <table width="75%" border="1" align="center" >
    <tr>
             <td align="center">教师姓名<font color="red">*</font></td>
            <td colspan="2"><input name="tname" type="text" class="textarea" size="35" maxlength="52" onblur="checkTname()" /> 
            <span id="tname_error" class="s1"></span>
            </td>
        </tr>
        <tr>
             <td align="center">教工号<font color="red">*</font></td>
            <td colspan="2"><input name="tnum" type="text" class="textarea" size="35" maxlength="52" onblur="checkTnum(this)"/>
            <span id="tnum1_error" class="s1" ></span>
    </td>
        </tr>
        <tr>
             <td align="center">登录密码:<font color="red">*</font></td>
            <td colspan="2"><input name="password" onblur="validatePwd(this);" type="text" class="textarea" size="35" maxlength="52" /><span id="pwd_error" class="s1"></span></td>
            </tr>
            <tr>
             <td align="center">重复密码:<font color="red">*</font></td>
            <td colspan="2"><input name="password1"  onblur="checkSame(this,adtea.password.value);" type="text" class="textarea" size="35" maxlength="52" /><span id="pwd1_error" class="s1"></span></td>
            </tr>
            <tr>
             <td align="center">教学科目:<font color="red">*</font></td>
            <td colspan="2">
            <select name="selcno"   >
            <option value="-1" >科目</option>
            <option value="1" >JAVA</option>
            <option value="2" >ASP</option>
            <option value="3">C#</option>
            <option value="4">C++</option>
            <option value="5">C</option>
            <option value="6">VB</option>
            <option value="7">VFP</option>
            </select><span id="cno_error" class="s1"></span>
            </td>
        </tr>
    </table>

    <input type="submit" value="新建教师" />
    </form>



    </body>
    </html>
    贴上整个页面
      

  4.   

    常见的现象是  你写成了 onsubmit="method();"       
    最好改成 onsubmit="return method();"       OK 了
      

  5.   

    嗯 看到了 你好多处都少些 return  改改 再试试
      

  6.   

    你在事件前 写"return 方法()" 看看
      

  7.   

    在你的页面调用方法地方前面加一个 return 就可以了。
    类似 onclick="return check();"/>
      

  8.   

    function checkForm(){
                    $('cno_error').innerHTML = "";
                    if(adtea.selcno.value=="-1"){
                        $('cno_error').innerHTML = "所属科目没选";
                        adtea.selcno.focus();
                        return false; //这里直接写就可以的。
                    }
      

  9.   

    你的 tnum f变量没定义吧 ?
    用火狐看下是不是js报错了 。
      

  10.   

     return checkTname() && checkTnum(tnum) && validatePwd(f) && checkSame(pwd1,pwd)&& a;
     一个逻辑判断写这么复杂???if(checkTname() == false){
    return false;
    }
    alert("checkTname");
    if(checkTnum(tnum) == false){
    return false;
    }
    alert("checkTnum")码重构一下
    挨个调试吧。。 
      

  11.   


    <%@page contentType="text/html;charset=utf-8"%>
    <%@include file="../common/taglib.jsp"%><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html>
    <head>
    <title>无忧考试 – 考试无忧</title>
    <%@include file="../common/common.jsp"%>
    </head>
    <body>
    <!-- 头部开始 -->
    <%@include file="../common/adHead.jsp"%>
    <!-- 头部结束 -->
    <hr/>
    <script type="text/javascript">
    function checkForm(){

    //$('cno_error').innerHTML = "";
    //if(adtea.cno.value=="-1"){
    //$('cno_error').innerHTML = "所属科目没选";
    //adtea.cno.focus();
    //return false;
    //}
    return checkTname() && checkTnum() && validatePwd()&& checkSame(pwd1,pwd)&& checkCno();
    }




                
                function checkTname(){
                 $('tname_error').innerHTML = "";
                 if(adtea.tname.value==""){
                 $('tname_error').innerHTML = "输入教师姓名";
                 adtea.tname.focus();
         return false;
                 }
                 return true;
                }
                
                function checkTnum(){
                 $('tnum1_error').innerHTML = "";
                 var value = adtea.tnum.value.strip();
                 if(value==""){
                 $('tnum1_error').innerHTML = "输入教工号";
                 adtea.tnum.focus();
         return false;
                 }
                 return true;
                }
                
                function validatePwd(){
                    $('pwd_error').innerHTML = "";
                    var value = adtea.password.value.strip();
                    if (value.length < 5) {
                        $('pwd_error').innerHTML = "密码必须不小于5位";
                        adtea.password.focus();
                        return false;
                    }
                    return true;
                }
                
                function checkSame(pwd1,pwd){
                 $('pwd1_error').innerHTML = "";
                 var value=pwd.value.strip();
                 if(value!=pwd1.value.strip()){
                 $('pwd1_error').innerHTML = "密码不一样";
                 adtea.password1.focus();
                 return false;
                 }
                 return true;
                }
                
                function checkCno(){
                 $('cno_error').innerHTML = "";
    if(adtea.cno.value=="-1"){
    $('cno_error').innerHTML = "所属科目没选";
    adtea.cno.focus();
    return false;
    }
    return true;
                }
                
                
                
    </script>

    <div class='your_position'>
    您现在的位置:&nbsp;
    <a href='startSelect.do'>登录选择</a> &gt;&gt;
    <a href='adLoginForm.do'>管理员登录</a> &gt;&gt;
    <a href='adManTeaStu.do'>用户信息</a> &gt;&gt;
    <font style='color: #cc3300'><strong>新建教师信息</strong> </font>
    </div>
    <form action="adNewTea.do" method="post" name="adtea"  onsubmit="alert(checkForm(this))">
    <table width="75%" border="1" align="center" >
    <tr>
             <td align="center">教师姓名<font color="red">*</font></td>
            <td colspan="2"><input name="tname" type="text" class="textarea" size="35" maxlength="52" onblur="checkTname()" /> 
            <span id="tname_error" class="s1"></span>
            </td>
        </tr>
        <tr>
             <td align="center">教工号<font color="red">*</font></td>
            <td colspan="2"><input name="tnum" type="text" class="textarea" size="35" maxlength="52" onblur="checkTnum()"/>
            <span id="tnum1_error" class="s1" ></span>
    </td>
        </tr>
        <tr>
             <td align="center">登录密码:<font color="red">*</font></td>
            <td colspan="2"><input name="password" onblur="validatePwd();" type="text" class="textarea" size="35" maxlength="52" /><span id="pwd_error" class="s1"></span></td>
            </tr>
            <tr>
             <td align="center">重复密码:<font color="red">*</font></td>
            <td colspan="2"><input name="password1"  onblur="checkSame(this,adtea.password);" type="text" class="textarea" size="35" maxlength="52" /><span id="pwd1_error" class="s1"></span></td>
            </tr>
            <tr>
             <td align="center">教学科目:<font color="red">*</font></td>
            <td colspan="2">
            <select name="cno" onblur="checkCno()"  >
            <option value="-1" >科目</option>
            <option value="1" >JAVA</option>
            <option value="2" >ASP</option>
            <option value="3">C#</option>
            <option value="4">C++</option>
            <option value="5">C</option>
            <option value="6">VB</option>
            <option value="7">VFP</option>
            </select><span id="cno_error" class="s1"></span>
            </td>
        </tr>
    </table>

    <input type="submit" value="新建教师" />
    </form>



    </body>
    </html>还没解决  我onsubmit="alert(checkForm(this))"    为false可还是提交啊
      

  12.   

    <form onsubmit="return CheckForm(this)">  你这样写试试...
    顺便请教lz : 你代码中的: $('pwd_error')   '$'代表的是啥?
    是jquery么? .... 
    $("id") ???
      

  13.   

    你这代码我试了下,就走了checkTname()就return了,根本没走其它的checkTnum()等
      

  14.   

    checkTname() && checkTnum() && validatePwd()&& checkSame(pwd1,pwd)&& checkCno();
    这里面的pwd1,pwd哪来的,也没传递参数
      

  15.   


     <script type="text/javascript" >
                function checkForm(f){
                    
                    //$('cno_error').innerHTML = "";
                    //if(adtea.cno.value=="-1"){
                        //$('cno_error').innerHTML = "所属科目没选";
                        //adtea.cno.focus();
                        //return false;
                    //}
    var b = checkTname(f) && checkTnum(f) && validatePwd(f)&& checkSame(f.pwd1,f.pwd)&& checkCno();
    alert(b);
                    return false;
                }
                
                
            
            
                
                function checkTname(f){
                    //$('tname_error').innerHTML = "";
                    if(f.tname.value==""){
                     //   $('tname_error').innerHTML = "输入教师姓名";
                        f.tname.focus();
                        return false;
                    }
                    return true;
                }
                
                function checkTnum(f){
                    //$('tnum1_error').innerHTML = "";
                    var value = f.tnum.value;
                    if(value==""){
                     //   $('tnum1_error').innerHTML = "输入教工号";
                        f.tnum.focus();
                        return false;
                    }
                    return true;
                }
                
                function validatePwd(f){
                   // $('pwd_error').innerHTML = "";
                    var value = f.password.value;
                    if (value.length < 5) {
                   //     $('pwd_error').innerHTML = "密码必须不小于5位";
                        f.password.focus();
                        return false;
                    }
                    return true;
                }
                
                function checkSame(f){
                   // $('pwd1_error').innerHTML = "";
                    var value=f.password.value;
                    if(value!=f.password1.value){
                      //  $('pwd1_error').innerHTML = "密码不一样";
                        f.password1.focus();
                        return false;
                    }
                    return true;
                }
                
                function checkCno(f){
                    //$('cno_error').innerHTML = "";
                    if(f.cno.value=="-1"){
                     //   $('cno_error').innerHTML = "所属科目没选";
                        f.cno.focus();
                        return false;
                    }
                    return true;
                }