I'd like to get many JSONs by Javascript or JQuery, and pull of elements named j_name, j_value, and j_sts into sarr[i], rarr[i], and parr[i], respectively.
var sarr = new Object;
var rarr = new Object;
var parr = new Object;
//num_json is the number of JSONs
//jsonurl is a url of the JSON
for(var i = 1; i < num_json; i++){
$.ajaxSetup({async: false});
$.getJSON(jsonurl[i], function(data) {
sarr[i] = data.j_name;
rarr[i] = data.j_value;
parr[i] = data.j_sts;
});
$.ajaxSetup({async: true});
}
Without
$.ajaxSetup({async: false});
and
$.ajaxSetup({async: true});
, an asynchronous processing causes that sarr[i], rarr[i], and parr[i] are filled by current loaded JSON elements. I have to stop asynchronous loading. However, this process is very slow to display the page.
I'd like to do like following to separate the object "data" storing a JSON, but it's clearly invalid.
var sarr = new Object;
var rarr = new Object;
var parr = new Object;
var data = new Object;
for(var i = 1; i < num_json; i++){
$.getJSON(jsonurl[i], function(data[i]) {
sarr[i] = data[i].j_name;
rarr[i] = data[i].j_value;
parr[i] = data[i].j_sts;
});
}
How can I load many JSONs asynchronously and store each specific elements?