Описание:
Прикрепляет функцию, которая исполняется всякий раз после завершения запроса AJAX. Это событие Ajax.
Аргументы
ajaxComplete( handler(событие, XMLHttpRequest, опцииAjax) )
Добавлена в версию: 1.0
handler(событие, XMLHttpRequest, опцииAjax)
Функция, которая будет вызвана.
Всякий раз, когда завершается просьба Ajax,
jQuery запускает событие ajaxComplete.
Все обработчики событий, которые были зарегестрированны вместе с методом
.ajaxComplete()
будут выполненны в это же время.
Для наблюдения этого метода в действии, мы можем создать базовую просьбу загрузки Ajax:
<div class="trigger">Trigger</div> <div class="result"></div> <div class="log"></div>
Мы можем прикрепить наш обработчик событий к любому элементу:
$('.log').ajaxComplete(function() {
$(this).text('Triggered ajaxComplete handler.');
});
Теперь мы можем сделать запрос Ajax с помощью любого метода jQuery:
Когда пользователь нажимает на кнопку, и просьба Ajax завершается, появляется сообщение в div с классом log.
Примечание:
Потому что AjaxComplete() реализован в качестве метода
экземпляра объектов jQuery, мы можем использовать ключевое слово this, как мы сделали здесь, для обозначения отдельных элементов в функции обратного вызова.
Все обработчики
ajaxComplete вызываются,
независимо от того, какая просьба Ajax завершенна.
Если нам нужно различить просьбы, мы можем использовать параметры, передаваемые в обработчик.
Каждый раз при выполнении обработчика ajaxComplete,
передается объект события, объект XMLHttpRequest,
и параметры объекта, которые были использованы при создании запроса.
Например, мы можем ограничить наш обратный вызов только обрабатывая события связанные с конкретным URL:
$('.log').ajaxComplete(function(e, xhr, settings) {
if (settings.url == 'ajax/test.html') {
$(this).text('Triggered ajaxComplete handler.');
}
});
Пример:
Показывает сообщение, когда запрос Ajax завершается.
$("#msg").ajaxComplete(function(event,request, settings){
$(this).append("<li>Request Complete.</li>");
});
Была ли эта информация полезной?

