Чтобы проверить, что происходит, когда я пытаюсь загрузить несуществующий ресурс (на том же хосте, что и мой веб-сервер), я создал следующий код:
var wrongURL = "http://foo/bar.json"; // non-existent resource
$.ajax({
url: wrongURL,
dataType: 'json',
success: function(jsonResponse, textStatus, jqXHR) {
$.('#divOfInterest').html("you should never see this");
},
error: function(jqXHR, textStatus, errorThrown) {
$.('#divOfInterest').html("sorry, could not find URL");
}
});
// remainder of code...
Вместо того, чтобы видеть мое ДИВ показать сообщение sorry, could not find URL
, я получаю ошибку консоли:
GET http://foo/bar.json 404 (Not Found) - bar.json
Все, что в пределах error
вызова и после $.ajax()
блока (т.е. // remainder of code
) не получает казнены
Похоже, мой браузер (Safari 5.1.5) застревает в ошибке 404 и уходит из функции раньше.
Как я могу обработать ошибку изящно и выполнить остальную часть моего кода?
Он также работает над сафари 5.0.2 – ocanal