【问题标题】:How do I make form submission wait for an AJAX callback in jQuery?如何让表单提交等待 jQuery 中的 AJAX 回调?
【发布时间】:2010-08-24 14:23:34
【问题描述】:

我想在.submit() 处理程序中包含一个 AJAX 调用,以便我可以在表单完全提交之前处理表单数据并发送电子邮件确认。因此我想让提交等到 AJAX 调用完成,这样我就可以根据响应取消提交或做其他事情。

我该怎么做呢?

【问题讨论】:

    标签: javascript jquery ajax forms


    【解决方案1】:

    在 JavaScript 中没有等待。

    最接近的方法是在表单的提交事件中停止默认操作,然后在来自 Ajax 请求的回调中调用表单元素的提交方法。

    【讨论】:

    • 调用.submit() 会再次触发 AJAX 请求吗?
    • @DLH 不要使用 submit()。使用按钮的 onClick 执行 Ajax 并在成功回调中调用 submit()。
    • @Fosco:好主意!我怎么没想到呢?
    • 调用表单的提交方法不会触发任何事件处理程序。不要使用按钮的 onclick 方法,如果(例如)通过在文本输入中按 enter 提交表单,它将不会触发。
    • 好吧,如果它不会触发任何处理程序,我想我会使用提交。不过,点击不会真的给我带来问题。我只有隐藏字段和单选按钮。
    猜你喜欢
    • 2017-09-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-01-10
    • 2013-07-22
    • 2019-05-05
    • 1970-01-01
    • 2010-10-19
    相关资源
    最近更新 更多