Можете ли вы отложить статус Code в JQuery 1,5?

Я вижу, что они добавили функцию для кодов состояния

statusCode(добавлено 1.5) Карта По умолчанию: {} Карта числовых HTTP-кодов и функций, вызываемых, когда ответ имеет соответствующий код. Например, следующее будет оповещать, когда статус ответа будет 404:

$.ajax({   statusCode: {404: function() {
    alert('page not found');   } }); 

Если запрос выполнен успешно, функции кода состояния принимают те же параметры, что и обратный вызов успеха; если это приводит к ошибке, они принимают те же параметры, что и ошибка

Мне интересно, вы можете сделать что-то вроде $.ajax({...}).statusCode(function(){...});

Симлиар о том, как ты можешь сделать

var jqxhr = $.ajax({ url: "example.php" })
    .success(function() { alert("success"); })
    .error(function() { alert("error"); })
    .complete(function() { alert("complete"); })

1 ответ

Решение

Да, ты можешь. Функция, насколько я могу судить, недокументирована, но функциональность выглядит точно так, как вы ожидаете - вы передаете карту объектов функций-обработчиков, где ключ - это код ответа HTTP, а значение - обработчик. функция. Смотрите исходный код.

пример

$.ajax({ url: "example.php" })
    .statusCode({
        200: function(){
            alert('success');
        },
        404: function(){
            alert('not found');
        }
    });
Другие вопросы по тегам