0
Я не могу найти плагин для JQuery эквивалент этого кода:JQuery плагин для последовательного AJAX-запросы
function get() {
var list = ['obj1', 'obj2', 'obj3', 'obj4', 'obj5'],
requests = [];
for(i = 0; i < list.length; i++) {
requests.push($.ajaxQueue({
type: "POST",
url: "/echo/html/",
data: {html: list[i]},
success: function(data) {
$("div").append("Call " + data + "<br>");
}
}));
}
return requests;
}
$(document).on("click", "button", function(){
$.when.apply(null, get()).then(function(){
$.each(arguments, function(key, val){
$("div").append(
"Status: " + val[2].status + ", " +
"responseText: " + val[2].responseText + "<br>"
);
});
});
});
jsfiddle.net
- все ведь метод
jsfiddle.net
- один по один метод
Что этот код делает:
- Позволяет настраивать запросы ajax как один шаблон для al л.
- Позволяет последовательно после каждого запроса ajax выполнять функцию успеха.
- Позволяет выполнять функцию, когда все запросы выполняются, и обеспечивает доступ к массиву объектов jqXHR.
Как я вижу этот плагин:
$.ajaxMulti({
type: "POST",
url: arrayOfUrls,
data: {name: ""}
// other ajax options
})
.oneDone(function(data){
// manipulate with data (sequence observed)
})
.allDone(function(objects){
// execute when all requests done
});
Полезные ссылки:
- https://stackoverflow.com/a/14352218/712308
- https://stackoverflow.com/a/3035268/712308
- https://stackoverflow.com/a/16208232/712308