在Sweetalert2中使用Ajaxstop的最佳方法

时间:2019-06-24 15:54:38

标签: jquery ajax sweetalert2

我进行了几次ajax调用,并希望在完成所有ajax调用后进行最后的swal fire。 我在下面的代码中尝试过,但是显然,它并没有达到预期的效果。基本上,我想要的是,在文本显示为“ All Done .... Success!”之后,我想在ajaxStop函数运行时使用showLoaderOnConfirm:true选项。 我现在的糟糕代码:

Swal.fire(
'All done!',
'I will now analyse your answers. Just give me a second',
'success',
).then(function() {
$( document ).ajaxStop(function() {
//do other stuff here like... form submit, etc. once all Ajax calls are done
$('#myform_id').submit();
});
})

上面的代码中发生的事情是,“ Swal”对话框已关闭,并且在提交#myformid之前,我的ajax调用中至少有一个仍在运行,用户想知道正在发生什么事情

在此先感谢您帮助新手! 问候 拉詹

1 个答案:

答案 0 :(得分:0)

经过高低搜索...发现了我想要的东西。与How to make Sweet alert auto close after ajax complete?

中提到的内容有所不同

我更改的代码:

Swal.fire({
  title: 'I will close automatically when AJAX request is finished',
  onOpen: function () {
    Swal.showLoading()



                $( document ).ajaxStop(function() {
                    $('#myformid).submit();
                    Swal.close()
                });

  }
})