javascript - 如何在 jQuery 中使用queue()

标签 javascript jquery ajax forms

我有以下提交表单的 jQuery 代码(通过 AJAX 函数):

$("#btnUpdate").on( "click",function(event){
    //disable default click operation
    event.preventDefault();
    update_conference_settings();
    $('.welcome-lightbox-close').click();
  });

update_conference_settings() 是提交 ajax 表单并返回确认的函数。 .welcome-lightbox-close 关闭表单所在的模式。

目前,.welcome-lightbox-close 似乎会立即关闭,而 update_conference_settings 则不会返回确认信息(尽管表单确实已提交)。我怎样才能添加一个队列呢?

http://api.jquery.com/queue/似乎是正确的函数,但我不确定语法如何在 update_conference_settings(); 代码上工作?

谢谢

最佳答案

update_conference_settings() 函数返回 $.ajax() 的返回值。然后将您的代码更新为

$("#btnUpdate").on( "click",function(event){
    //disable default click operation
    event.preventDefault();
    update_conference_settings().then(function() {
            $('.welcome-lightbox-close').click();
        });
});

这里我们使用 $.ajax() 返回的延迟对象。

关于javascript - 如何在 jQuery 中使用queue(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20983975/

相关文章:

javascript - Ember 嵌套路由和 Promise

javascript - JS - console.log(..) 在 for 循环内的回调函数之后输出

javascript - HTML 提交表单仅在提交时执行一个 JavaScript 函数

javascript - jQuery 将 CSS 类添加到动态创建的元素

javascript - Google map 标记出现在 native 页面链接上

javascript - 这在 Javascript "typeof(arguments[0])"中意味着什么

javascript - 奇怪的 $.each 行为

javascript - eventDrop 完整日历不移动事件

php - 使用 ajax jquery 和 php 将 sortable 保存到 mysql

javascript - Flexslider:在自定义按钮单击时移动到下一张幻灯片(有延迟)