Codepen with working example.Запрос нескольких таблиц JSON внутри JavaScript для цикла
Я еще новичок в JavaScript, так что я мог бы идти об этом неправильно. Если вы можете предложить мне лучший способ сделать это, я бы очень признателен; всегда любите изучать новый, лучший способ!
Здесь идет:
Я использую массив Ид для генерации URL, из 10 таблиц в формате JSON Я тянущие данные.
var set = $('.set');
var iD = [
"od6",
"o9mpc0w",
"ol96q2e",
"olqcdyz",
"ojfsm09",
"oijguh3",
"obmuic4",
"oup920g",
"ohwlz67",
"omk1ruv"
];
function photoSet(){
var idLength = iD.length;
for (var i = 0; i < idLength; i++) {
Как только я повторяю массив, я использую вызов ajax для запроса каждого из них.
$.ajax({
url:'https://spreadsheets.google.com/feeds/cells/1TBjwQNVRMNzuyZRxr9yX-fUKWw6gpUX69o9PQc79COs/' + iD[i] + '/public/values?alt=json',
async: true,
dataType: 'jsonp',
success: photos});
После они опрошены, я извлечь данные из ячеек каждой таблицы JSON и использовать его в качестве ЦСИ изображений для вставки в документ.
function photos(results){
for(var a = 1; a <= 1; a++) {
var imageEntry = results.feed.entry[a].content.$t;
set.append('<li class="image"><img src="'+ imageEntry +'"/></li>');
console.log(imageEntry);
}
}
}
}
photoSet();
Вот вопрос: мне нужно иметь полученные изображения в том же порядке, как массив Ид
Каждый раз, когда страница загружается, изображения отображаются в другом порядке. Я знаю, что это происходит, потому что запросы поступают в несколько раз, что приводит к другому порядку загрузки каждой страницы.
Имеет ли это какое-то отношение к хранению вызовов ajax в переменных, а затем захват их по одному за раз? Нужен ли мне другой обратный вызов? Поскольку вложение становится более сложным, я становлюсь более запутанным:/
Я искал высоко и низко для того, как это сделать, но просто не может понять, как это понять. Кажется, с каждым новым открытием, которое я делаю, возникает новая проблема. Такова природа кода, я полагаю. Спасибо вам за помощь :)
Также I saw this question, но мне трудно понять, как применить свой ответ на мой код. Если я это сделаю, я быстро удалю этот вопрос.
Вы бы быть счастливым с возвратом img src'es обратно в порядок все одновременно? В отличие от показа их, поскольку они приходят в –
, я бы! Как замечание, когда я изменяю async на false и dataType на json, они входят в правильный порядок. Это надежный? Я не понимаю, почему это работает. Я внес изменения в код, чтобы отразить это изменение. –