为什么jquery表单没有在第一次点击时提交

时间:2018-04-08 11:54:02

标签: php jquery ajax forms

我有一个弹出模式,在验证后提交到ajax页面。验证和提交工作完美。但唯一的问题是,第一次点击它不是提交表格或验证。在第二次点击它是完美的。

代码:

<script>
      $(function () {

        $('form').on('submit', function (e) {

          e.preventDefault();

          $('#gen-bar-form').validate({
                ignore: [],
                rules: { 
                        firstName: {
                            required: true
                        },
                        editor: {

                            required: true
                        }
                },

          submitHandler: function(form) {

             $("#loader-bg").css("visibility", "visible");

          $.ajax({
            type: 'post',
            url: 'action/file.php',
            data: $('form').serialize(),
            success: function (data) {
            var GenTokRet = JSON.parse(data);
            $("#gen-msg").html("<p>"+GenTokRet+"<p>");
            $("#loader-bg").css("visibility", "hidden");  

            }
          });

          }

          }); 

        });

      });
    </script>

1 个答案:

答案 0 :(得分:1)

你做错了,因为你正在使用防止默认功能来停止表单, 虽然jQuery validate会自动停止提交表单,直到它有效。 所以只需在提交功能上输入验证功能