JS Multiple ajaxFunction

by Jeff Jones

JavaScript

// Write a function that will call ‘ajaxFunction’ for each item in ‘list’, then call ‘callback’ when all ajax calls are finished.

var list = ['obj1', 'obj2', 'obj3', 'obj4', 'obj5'];
var callback = function () {
    console.log("done");
};
var requests = [];

var ajaxFunction = function (obj, successCallback, errorCallback) {
    for (i = 0; i < list.length; i++) {
        requests.push($.ajax({
            url: 'url',
            success: function (results) {
                console.log(results);
            }
        }));
    }
};

$.when.apply(new ajaxFunction(), requests).then(function (results) {
    callback();
});