委托发送点击提交按钮(jQuery)

时间:2018-05-22 17:04:12

标签: javascript jquery

说我们有

$submitButton.click(function(e){
    doSomething(e);
    return false;
});

其中$submitButton是表单提交按钮的jQuery对象。假设doSomething是一个带有AJAX调用的异步方法。

如果我return true,那么表单会在doSomething结束之前提交,所以我想return false然后doSomething结束AJAX,在成功回调中,我想要真正提交表格。

这只能使用e吗?如何?

1 个答案:

答案 0 :(得分:2)

$submitButton.click(function(e){
    //make doSomething return a promise that you can chain off of
    doSomething(e).then(function(){
        //submit the parent form
        $submitButton.closest('form').trigger('submit');
    });

    //cancel the click and wait for the ajax to finish
    return false;
});