如何提交表格,然后提交?

时间:2015-06-02 19:20:44

标签: javascript jquery html forms

我有一个带有电子邮件输入的表单,一个按钮重叠它,当我点击按钮时,按钮滑过输入,这样你就可以输入电子邮件了。当您点击按钮时,它必须提交表单。

我该怎么做?

<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() {

            });

    }
    });
})();

3 个答案:

答案 0 :(得分:1)

使用jQuery.one()添加取消提交的一次性事件处理程序,然后使用jQuery.submit()在完成任务后触发提交事件。

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

答案 1 :(得分:0)

您可以使用此结构。提交方法仅在第二次点击时运行。

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

答案 2 :(得分:0)

无需处理按钮的单击,只需处理提交事件。您需要做的就是在您希望提交时调用e.preventDefault()

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