V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐关注
Meteor
JSLint - a JavaScript code quality tool
jsFiddle
D3.js
WebStorm
推荐书目
JavaScript 权威指南第 5 版
Closure: The Definitive Guide
WenJimmy
V2EX  ›  JavaScript

关于 jQuery Validation Engine 表单验证插件--onValidationComplete 参数的使用方法 进入无限循环了,应该怎么解决?思路是什么...

  •  
  •   WenJimmy · 2015-11-30 11:17:06 +08:00 · 3166 次点击
    这是一个创建于 3281 天前的主题,其中的信息可能已经有所发展或是发生改变。

    情景是这样的 在表单验证成功后,弹出 confirm 选择,确定之后再提交...

    表单验证需要 submit 触发
    表单提交验证完成时的回调函数(onValidationComplete)
    function(form, valid){},参数:
    form :表单元素
    valid :验证结果( ture or false )
    PS :使用此方法后,表单即使验证通过也不会进行提交,交给定义的回调函数进行操作。

    submit 触发验证,验证通过后使用

    if(confirm("确定保存到系统?")){
            $('#form1').submit();
    }
    

    这样之后就无限弹窗了

    正确的办法应该是什么?

    <!DOCTYPE HTML>
    <html>
    <head>
    <meta charset="utf-8">
    <title>jQuery Validation Engine 表单验证中文版 &raquo; 在线演示 - 前端开发仓库</title>
    <link rel="stylesheet" href="http://code.ciaoca.com/css/demo.css">
    <link rel="stylesheet" href="http://code.ciaoca.com/jquery/validation_engine/demo/css/validationEngine.jquery.css">
    <link rel="stylesheet" href="http://code.ciaoca.com/jquery/validation_engine/demo/css/layout.css">
    </head>
    <body>
    <div class="wrap">
    
      <div class="main">
        <div class="inwrap">
          <h1>jQuery Validation Engine 表单验证中文版</h1>
          <h2>验证回调函数(阻断提交)</h2>
    
          <div class="detail">
            <p>使用参数<code>onValidationComplete</code>设置在获得表单验证后,进行的操作。</p>
            <p>使用此方法后,表单即使验证通过也不会进行提交,交给定义的回调函数进行操作。</p>
          </div>
    
          <div class="example">
            <form id="formID2" class="formular" method="post" action="">
              <fieldset>
                <legend>Phone</legend>
                <div class="tips">
                  <p>手机号格式示例:</p>
                  <ul>
                    <li>+103-304-340-4300-043</li>
                    <li>+1 305 768 23 34 ext 23</li>
                    <li>+1 (305) 768-2334 extension 703</li>
                    <li>+1 (305) 768-2334 x703</li>
                    <li>04312 / 777 777</li>
                    <li>01-47.34/32 56</li>
                    <li>(01865)  123456</li>
                  </ul>
                </div>
                <input value="+1 305 768 23 34 ext 23 BUG" class="validate[required,custom[phone]] text-input" type="text" name="telephone" id="telephone">
              </fieldset>
    
              <fieldset>
                <legend>OnlyLetter</legend>
                <div class="tips">只能输入 a-z 、 A-Z 、空格和单引号(')</div>
                <input value="this is an invalid char '.'" class="validate[required,custom[onlyLetterSp]] text-input" type="text" name="onlyascii" id="onlyascii">
              </fieldset>
    
              <input class="submit" type="submit" value="验证 &amp; 提交表单">
            </form>
          </div>
    
        </div>
      </div>
    </div>
    
    <script src="http://code.ciaoca.com/js/jquery-1.7.2.min.js"></script>
    <script src="http://code.ciaoca.com/jquery/validation_engine/demo/js/languages/jquery.validationEngine-zh-CN.js"></script>
    <script src="http://code.ciaoca.com/jquery/validation_engine/demo/js/jquery.validationEngine.min.js"></script>
    <script>
    jQuery(document).ready(function(){
      jQuery('#formID2').validationEngine('attach', {
        onValidationComplete: function(form, status){
          //alert('表单是否验证通过?结果:' + status + ',表单不会提交。');
            if(status){
               if(confirm("确定保存到系统?")){
            form.submit();
               }
            }
        }
      });
    });
    </script>
    
    </body>
    </html>
    
    3 条回复    2015-11-30 19:38:10 +08:00
    IamJ
        1
    IamJ  
       2015-11-30 16:19:51 +08:00   ❤️ 1
    $('#id').validationEngine('validate') //验证控件或表单,返回结果 true 或 false
    WenJimmy
        2
    WenJimmy  
    OP
       2015-11-30 16:25:58 +08:00
    @IamJ 感谢。已经用上了,还是上 GitHub Issues 看问题解决的快,中文文档好坑
    IamJ
        3
    IamJ  
       2015-11-30 19:38:10 +08:00
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1060 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 19:28 · PVG 03:28 · LAX 11:28 · JFK 14:28
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.