2017-04-26 62 views
2

我正在使用ajaxStart()爲每個AJAX調用加載加載彈出屏幕。我彈出的文字是loading! Please wait將值傳遞給AjaxStart事件

我需要根據屏幕更改文字。例如,我有一個屏幕,它正在做一些AJAX調用的計算。然後彈出應該像System is doing the calculation! Please wait

如何使用ajaxStart()功能執行此操作?

$(document).ajaxStart(function() { 
    $("#modal").modal('show') 
}) 
+0

Cna的你告訴我們,你做了什麼 –

+0

的$(document).ajaxStart(函數(){$ ( 「#modal」).modal(」 show') })..在模式中,我給出了一個默認文本「Loading!Please wait」。來自文檔http://api.jquery.com/ajaxStart/的 – SJoy

+0

看起來像沒有任何參數在回調中傳遞。所以我認爲用'ajaxStart'很難達到你想要的。我不認爲你應該使用這個事件,你可以手動管理這些調用,或者嘗試使用'.ajaxPrefilter'。 –

回答

2

您可以在文件中使用全局變量並在每次發送請求時更改變量的值;

var messageVar ="Loading.. Please Wait..!!"; 

    $(document).ajaxStart(function() { 
    //use messageVar here for your reqmnt; 

     $("#modal").modal('show'); 
     $("#modal").append('<div>'+messageVar +'</div>'); 

    });. 

AJAX呼叫請求之前,你可以設置messageVar

+0

明智的答案..即使我想不到。 – SJoy

+0

謝謝,偶爾擲骰子正確的方式.. –

+0

如果你一次只有1個ajax調用,這個工程。但是,我擔心如果有多個調用(一系列Ajax調用),最後一個將覆蓋該消息。當然,在OP的情況下,這種情況不應該發生(因爲它看起來像反饋消息是針對用戶的,而且一次只有一個動作)。 –