我有两个json文件,我想对它们进行ajax调用。
$.getJSON('http://www.example.com/contest_media', function(data) { do something });
$.getJSON('http://www.example.com/contest', function(data) { do something });
我希望它变得像:
$.getJSON(['http://www.example.com/contest_media', 'http://www.example.com/contest'], function(data) { do something});
我也在使用$.each(data, function(i,item) {}
所以我不能这样做:
$.getJSON('http://www.example.com/contests', function(data) {
$.each(data, function(i,item) {
do something
$.getJSON('http://www.example.com/contest_media', function(data) {do something });
}
});
此处contest_media
无法跟踪contests
。
我基本上想要使用同一$.each
中两个json文件中的数据。有什么想法吗?
答案 0 :(得分:2)
我相信这可以通过$.when
完成。在您的情况下,您的代码可能看起来像......
$.when(
$.getJSON('http://www.example.com/contest_media'),
$.getJSON('http://www.example.com/contest')
).done(function(contestMedia, contest) {
// do something
// contestMedia = [ "success", statusText, jqXHR ]
// contest = [ "success", statusText, jqXHR ]
// response data can be gotten with contest[2].responseText
});
请注意,这需要jQuery 1.5版。
答案 1 :(得分:0)
你能不能只是筑巢吗?我想你无论如何都需要依赖它们的数据。
$.getJSON('http://example.com/contest_media', function(data) {
// do basic stuff
$.getJSON('http://example.com/contest', function(data) {
// do more stuff now that you have both pieces of data
});
});