, : . $. , (, - ), .
, . , , , , jqueryer (, , !)
-, , ajax, . , .
function selectedSeriesData() {
var requests = [];
$.each($("input[name='somethingCheckBox']:checked"), function () {
var id = $(this).attr('value');
var request = {
id: id
};
requests.push(request);
});
loadRequests(requests);
}
loadRequests, .
function loadRequests(requests)
{
$("#loader").show();
var seriesData = [];
loadRequestAt(requests, 0, seriesData);
}
loadRequestAt, , , Data, . Anon. , Data, , , , , , .
function loadRequestAt(requests, loadAtIndex, seriesData) {
var currentRequest = requests[loadAtIndex];
$("#loadingMessage").text("Loading " + currentRequest.id + "...");
$.ajax({
type: 'POST',
url: '<%: loadSeriesDataPath %>',
dataType: 'json',
data: {
Id: currentRequest.id
},
success: function(data) {
seriesData.push(data);
},
error: function(xhr, ajaxOptions, error) {
$("#warnings ul").append('<li>A communication error occured while attempting to load ' + currentRequest.id'.</li>');
},
complete: function() {
var nextIndex = loadAtIndex + 1;
if (nextIndex < requests.length) {
loadRequestAt(requests, nextIndex, seriesData);
} else {
$("#loader").hide();
renderResults(seriesData);
}
}
});
}
. AJAX ( JavaScript XML). , ( , , ). , , jquery ajax-. !