本帖最后由 smcfy 于 2010-06-11 19:35:25 编辑

解决方案 »

  1.   

    你的Check()方法没有对输入错误密码进行return false,当然会请求后台了!
      

  2.   

    没太看明白~不执行什么意思?
    你在加个按钮到页面
    <input type="button" value="什么意思" onclick="Check();"/> 第一次打开的时候,你直接按下这个按钮,没反应吗?
      

  3.   

    你的function Check()这个函数没有
    验证成功后没有return true; 
      

  4.   


    var a=${info1};//这个是什么?jquery,还是EL表达式,这一句错误了,后面的语句都无法执行,EL表达式只能在jsp中,也就是页面中
      

  5.   

    错误密码的判断的确是在后台进行的,我这里要判断的是输入的密码是否为空及两次输入的新密码是否一致,现在问题是根本执行不到Check()函数,也就是说如果输入的密码为空的话仍然能提交到后台
      

  6.   

    是的,没反应,也就是说根本执行不到Check()代码
      

  7.   

    这个试过了,也不行,关键是程序根本就不进入Check()这个函数
      

  8.   

    1.var a=${info1};如果这个变量是个字符串的话,改成var a="${info1}";2.<form id="form1" action='modifypassword.do' method='post' onSubmit='return Check();';>
    改成
    <form name="form1" action='modifypassword.do' method='post' onSubmit='return Check();'>
      

  9.   


    <SCRIPT type="text/javascript" LANGUAGE = "JavaScript">
        
        function Check() {
           var str,str1,str2;
           var str=document.getElementById('form1').pass.value;
           var str1=document.getElementById('form1').newpass.value;
           var str2=document.getElementById('form1').newpass2.value;
           if(!str){
              alert("请输入原始密码!");
              document.getElementById('form1').pass.focus();
              return false;
            }
           if(!str1){
              alert("请输入新密码!");
              document.getElementById('form1').newpass.focus();
              return false;
            }
            if(!str2){
              alert("请再次输入新密码!");
              return false;
            }        if(str1 != str2){
                alert("两次输入的密码不一致!");
                document.getElementById('form1').newpass.clear();
                document.getElementById('form1').newpass2.clear();
                document.getElementById('form1').newpass.focus();  
                return false;
            }alert(6);
        }
       
        </SCRIPT>
    <form id="form1" action='modifypassword.do' method='post' onSubmit='return Check();';>
               <table width="100%" border="0"  cellspacing="3" bgcolor="#FFFFFF">
                  <tr>
                  <td colspan="5">
                    原密码:<input  id="pass" type="password"  name="pass" /></td>
                  </tr>
                  <tr>
                  <td colspan="5">
                    新密码:<input  id="newpass" type="password"  name="newpass" /></td>
                  </tr>
                  <tr>
                  <td colspan="5">
                    再次输入新密码:<input id="newpass2" type="password"  name="newpass2" /></td>
                  </tr>
                  <tr>
                    <td colspan="5">
                    <input  type= "submit" value="保存" />
                    <input  type="reset" value="重置" /></td>
                  </tr>
                
                </table>
    </form>
      

  10.   

    这个试过了,也不行,关键是程序根本就不进入Check()这个函数
    你的function Check()这个函数没有
    验证成功后没有return true;
      

  11.   

    问题解决了,就是那个a=${info1}在作怪,呵呵,万分感谢!
      

  12.   

    谢谢你的回答,那个form id的问题纯属笔误,因为之前试了很多方法,一时忘改回来了,呵呵。。