怎么不提交表单,那就提交吧

How not to submit form, then submit it?

本文关键字:提交 表单      更新时间:2023-09-26

我有电子邮件输入表单,一个按钮重叠它,当我点击按钮,按钮滑动输入,所以你可以输入电子邮件。当你点击按钮时,它必须提交表单。

我怎么做呢?

<form action="http://databox.createsend.com/t/d/s/itkkyu/" method="post" class="subscribe-form" accept-charset="utf-8">
 <input id="fieldEmail" name="cm-itkkyu-itkkyu" class="input" type="email" placeholder="Your company email">
 <button class="get-notified" type="submit">Get notified</button>
</form>

js:

(function () {
    var count = 0;
    $('.subscribe-form button').click(function () {
        $('.subscribe-form').submit(function(e) {
            e.preventDefault();
            count += 1;
        });
    if (count == 1) {
            console.log('oj');
            $('.subscribe-form').submit(function() {
            });
    }
    });
})();

使用jQuery.one()添加一个一次性事件处理程序来取消提交,然后使用jQuery.submit()在您正在做的任何事情完成后触发提交事件

$('.subscribe-form').one('submit',function(e) {
    e.preventDefault();
    // do something
    $(this).submit();
});

您可以使用这种结构。Submit方法将只在第二次单击时运行。

(function () {
    var submit = false;
    $('.subscribe-form button').click(function (e) {
        if (!submit) {
            e.preventDefault();
            submit = true;
            return;
        }
    });
})();

不需要处理单击按钮,只需要处理提交事件。当你想提交e.preventDefault()时,你所要做的就是不要调用它。

(function () {
  var count = 0;
    $('.subscribe-form').submit(function(e) {
        if (count < 1) {
          e.preventDefault();
          count += 1;
        }
    }
});