2009-08-24 84 views

回答

6

使用阿賈克斯的beforeSubmit &完整的事件。

如果您希望爲所有ajax調用執行此操作,則可以使用全局ajaxStart和ajaxComplete事件,而不是每次都聲明它。

$.ajax({ 
    url: "test.html", 
    beforeSubmit : showSpinner, 
    complete : hideSpinner, 
    cache: false, 
    success: function(html){ 
    $("#results").append(html); 
    } 
}); 

function showSpinner(){ 

    $('#someElement').show(); 

} 

function hideSpinner(){ 

    $('#someElement').hide(); 

} 


//Using global ajax events 

$.ajaxStart(showSpinner); 
$.ajaxComplete(hideSpinner); 
0

jQuery有很多ajaxEvents。您可以將元素的可見性綁定到這些元素。

$.ajaxStart(function(){ showLoading(); }); 
$.ajaxComplete(function(){ hideLoading(); }); 
+0

是的,這是可能的,而不是增加其在beforeSubmit,不過當你有一個一般的微調,或者給一個ID爲PARAM這種邏輯只會工作一個簡單的解決方案,你可以指定的微調器以顯示... 如果你有很多不同的加載事件,我建議以另一種方式做它,將它添加到beforeSubmit和完成 – Sander 2009-08-24 13:59:10

相關問題