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

