русский  עברית
tadam logo
Нашли ошибку в тексте?
Отметьте её курсором и нажмите
Ctrl + Enter
Проверка орфографии Xhtml.co.il
Orphus system
Рассылка
Присоединитесь к списку рассылки для получения последних новостей
Имейл
Имя и фамилия

ajaxComplete( handler(событие, XMLHttpRequest, опцииAjax) )

Возвращает: jQuery
Описание: Прикрепляет функцию, которая исполняется всякий раз после завершения запроса 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:
$('.trigger').click(function() {
  $('.result').load('ajax/test.html');
});

Когда пользователь нажимает на кнопку, и просьба 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>");
 });
Была ли эта информация полезной?
   

Комментарии