У меня есть ситуация, когда мне нужно делать последовательные запросы AJAX, представленные упорядоченным списком (<ol><li>..
) на странице. Я использую jQuery.
Требования:
- Каждый запрос должен ждать завершения предыдущего запроса с успешным статусом.
- Сообщение об успехе или ошибке необходимо добавить к соответствующему элементу списка.
- Процесс должен быть остановлен в случае возникновения ошибки в каком-либо элементе.
- Ошибки могут быть ошибками HTTP или ошибкой, возвращенной в ответе в формате JSON.
Что у меня работает:
- Цикл по списку
- Выполнение
$.getJSON
вызова нужного URL для каждого элемента списка
Предметы «Требования» - это штуки, которые я не разработал.
РЕШЕНИЕ
В итоге я использовал jQuery Message Queuing , но я не нашел способа вернуть HTTP-ошибки элементу, который породил запрос. Вместо этого я отображаю ошибку в другом месте.
$(document).ajaxError(function(event, response, settings, exception){
$('#Admin').append('<p class="error">' + response.status + ' error requesting page:<br />' + settings.url + '<br />Reload this page to continue.</p>');
});
Я бы предпочел отображать ошибки HTTP с элементом, если кто-то может помочь мне с этим.