Синтаксический анализ JQuery XML при ошибке - PullRequest
0 голосов
/ 08 марта 2012

Я пытаюсь проанализировать XML в ответе Ajax.Когда сервер возвращает 200, все работает нормально.Но похоже, что синтаксический анализ XML в JQuery отключен при ошибке.

statusCode:{
200:function(xml){alert($(xml).find("error").text());},
404:function(xml){alert($(xml).find("error").text());}
}

Если я отправлю 200, я получу правильное предупреждение.Но если я изменю код ответа на любую ошибку, которая мне нравится, я просто получаю пустое окно с предупреждением.Я просто глуп для отправки text / xml по ошибке, это ошибка в jquery или где я ошибаюсь?

Надеюсь, что кто-то может помочь.

1 Ответ

1 голос
/ 08 марта 2012

Согласно jQuery документации ,

Если запрос выполнен успешно, функции кода состояния принимают то же самое параметры как обратный вызов успеха, который является «успех (данные, textStatus, jqXHR) ";

если это приводит к ошибке, они принимают те же параметры, что и обратный вызов ошибки "error (jqXHR, textStatus, errorThrown)"

Это означает, что в вашем обратном вызове 404 "function (xml) {alert ($ (xml) .find (" error "). Text ());" «xml» на самом деле является объектом jqXHR, и понятно, что $ (xml) .find («error»). text () - ничто.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...