jQuery表单验证validate()验证后提交不起作用

时间:2012-07-22 10:21:04

标签: javascript jquery

  

可能重复:
  Form validation in javascripit does not work propably

我使用validate()来验证表单。

这是html:

    <form  id="form3" name="form3"   method="post" action="changepassExcution.php">
           <ul>  <li id="foli1" class="notranslate">

                    <label class="desc" id="title1" for="oldpass">
            old password:
           </label>
                <div>
                   <input id="oldpass" name="oldpass" type="password" class="field text medium    required" maxlength="255" tabindex="1"/> </div></li>
 <li id="foli2" class="notranslat">
                <label class="desc" id="title2" for="newpass">
                              new password:
                         </label>
                           <div>
               <input id="newpass" name="newpass" type="password" class="field text medium  required" maxlength="255" tabindex="2" />
            </div></li>
       <li id="foli3" class="notranslate">
       <label class="desc" id="title3" for="retypenewpass">
      repeat new password:</label>
          <div><input id="retypenewpass" name="retypenewpass" type="password" class="field text medium required"  maxlength="255" tabindex="3" /></div></li>
        <li class="buttons "><div>
            <input  id="saveForm" name="saveForm" class="button" type="submit" value="change password"/></div></li>

            </ul>
             </form>

这是javascript:

    <script>
    $(document).ready(function(){
    $("#form3").validate();
       });
       </script>

问题是:当我正确提交表单(有效)时,它会被提交,但是当表单无效时,我更正了提交无效。


更新:该功能现在正在使用Horraaay :),代码如下:

      <script>
      $(document).ready(function(){
      $("#form3").validate();
     });
     </script>

唯一的问题是输入表单名称..我用过&#39;提交&#39;作为输入表单的名称,然而之前是在不同的名称..

2 个答案:

答案 0 :(得分:0)

尝试:

<script>
    $(document).ready(function(){
       $("#form3").validate();
    });
</script>

修改

尝试:

<script>
    $(document).ready(function(){
       $("#form3").submit(function(){
            $(this).validate();
       });
    });
</script>

答案 1 :(得分:0)

它是否可行,但没有验证规则 - 所以它总是通过?

如何设置这样的规则:

<script>
$(document).ready(function(){
    $("#form3").validate({
        rules: {
            oldpass: { required: true },
            newpass: { required: true },                
        }
    });
});

jQuery documentation

中了解详情