Я хочу иметь два метода $.get
, которые запускаются один за другим, я искал его, кажется, что есть ответы, но все они не упоминают о возможности доступ к ответу JSON.JQuery: последовательные вызовы AJAX с доступом к обоим ответам
Первое, что я попытался укладывал вызов внутри функции обратного вызова другого, как это:
var url1 = "json_example1.json";
var url2 = "json_example2.json";
var callback1 = function (response1) {$.get(url2,callback2);}
var callback2 = function (response2) {console.log(response1,response2)}
Вторая функция обратного вызова даже не запускать!
Я также попытался использовать when..this
как этот
var url1 = "json_example1.json";
var url2 = "json_example2.json";
var callback1 = function (response1) {alert("first callback!")}
var callback2 = function (response2) {console.log(response1,response2)}
$.when($.get(url1,callback1)).then($.get(url2,callback2));
Он выдает сообщение об ошибке говорит, что response1 не определен.
даже когда я положил ответ в глобальной переменной, как это:
var json1,json2;
var url1 = "json_example1.json";
var url2 = "json_example2.json";
var callback1 = function (response1) {json1 = response1};
var callback2 = function (response2) {json2 = response2;console.log(json1,json2)};
$.when($.get(url1,callback1)).then($.get(url2,callback2));
по какой-то причине функция callback2
не получает excuted и json2 = undefined
так, как я могу иметь последовательный ход $.get
ajax-запросы с доступом к обоим их ответам во второй функции обратного вызова?
Можете ли вы опубликовать jsfiddle с тем, что вы видите? – OceansOnPluto