.ajaxComplete()
.ajaxComplete( handler(event, XMLHttpRequest, ajaxOptions) ) 返回: jQuery
描述: 當(dāng)Ajax請(qǐng)求完成后注冊(cè)一個(gè)回調(diào)函數(shù)。這是一個(gè) Ajax 事件.
-
version added: 1.0.ajaxComplete( handler(event, XMLHttpRequest, ajaxOptions) )
handler(event, XMLHttpRequest, ajaxOptions)回調(diào)函數(shù).
每當(dāng)一個(gè)Ajax請(qǐng)求完成,jQuery就會(huì)觸發(fā)ajaxComplete事件,在這個(gè)時(shí)間點(diǎn)所有處理器會(huì)使用.ajaxComplete()方法注冊(cè)并執(zhí)行。
我們可以建立一個(gè)基本的Ajax請(qǐng)求,觀察該方法的執(zhí)行過程:
<div class="trigger">Trigger</div> <div class="result"></div> <div class="log"></div>
我們可以在一些節(jié)點(diǎn)上添加的事件處理函數(shù):
$('.log').ajaxComplete(function() {
$(this).text('Triggered ajaxComplete handler.');
});
現(xiàn)在我們可以構(gòu)建一個(gè)Ajax請(qǐng)求使用任何的jQuery方法:
$('.trigger').click(function() {
$('.result').load('ajax/test.html');
});
當(dāng)我們點(diǎn)擊這個(gè)按鈕并且Ajax請(qǐng)求完成,這個(gè)信息就會(huì)顯示。
注意: 因?yàn)?code>.ajaxComplete() 是作為一個(gè)jQuery對(duì)象實(shí)例方法去執(zhí)行的,我們可以用this關(guān)鍵字作為回調(diào)函數(shù)中指定的元素。
無論哪一個(gè)Ajax請(qǐng)求被完成,所有ajaxComplete處理器都將被執(zhí)行。如果我們必須區(qū)分的請(qǐng)求,我們可以使參數(shù)傳遞給這個(gè)處理器。 他是通過事件對(duì)象、 XMLHttpRequest 對(duì)象和設(shè)置對(duì)象中使用的請(qǐng)求,做每一次ajaxComplete 處理器執(zhí)行的。 舉個(gè)例子,我們能限制我們的回調(diào)到只處理事件處理某一特定的URL:
$('.log').ajaxComplete(function(e, xhr, settings) {
if (settings.url == 'ajax/test.html') {
$(this).text('Triggered ajaxComplete handler.');
}
});
舉例:
當(dāng)Ajax請(qǐng)求完成后顯示一個(gè)信息。
$("#msg").ajaxComplete(function(event,request, settings){
$(this).append("<li>Request Complete.</li>");
});