2017-04-13 41 views
1

如何使用sweetalert進行沒有確認按鈕的Ajax調用,但仍顯示加載gif?基本上我希望在Ajax調用運行時顯示加載gif。開箱即用的解決方案要求您在Ajax調用之前啓用確認按鈕。Sweet Alert - 沒有確認按鈕的Ajax調用

下顯然是行不通的:

window.swal({ 
    title: "Checking...", 
    text: "Please wait", 
    imageUrl: "images/ajaxloader.gif", 
    showConfirmButton: false, 
    allowOutsideClick: false 
}, 
function() { 
    $.getJSON('myurl').done(function (data) { 
     swal("", "Good job!", "success"); 
    }).fail(function (jqXHR, textStatus, err) { 
     swal("", "An error occurred", "error"); 
    }); 
}); 
+0

https://limonte.github.io/sweetalert2/#ajax-request –

回答

4

你不需要做任何特殊。顯示swal之後,只需進行ajax調用,並在ajax完成時再調用swal。

window.swal({ 
 
    title: "Checking...", 
 
    text: "Please wait", 
 
    imageUrl: "images/ajaxloader.gif", 
 
    showConfirmButton: false, 
 
    allowOutsideClick: false 
 
}); 
 

 
//using setTimeout to simulate ajax request 
 
setTimeout(() => { 
 
    window.swal({ 
 
    title: "Finished!", 
 
    showConfirmButton: false, 
 
    timer: 1000 
 
    }); 
 
}, 2000);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<script src="https://cdnjs.cloudflare.com/ajax/libs/sweetalert/1.1.3/sweetalert-dev.js"></script> 
 
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/sweetalert/1.1.3/sweetalert.css" />