2011-04-21 12 views
2

私は2つのjsonファイルを持っていて、私はそれらの両方にajax呼び出しを行いたいと思います。jqueryを使用して2つのjsonファイルからデータをロードするには?

私はそれが何かになりたい
$.getJSON('http://www.example.com/contest_media', function(data) { do something }); 
$.getJSON('http://www.example.com/contest', function(data) { do something }); 

:私もそう、私は行うことはできません$.each(data, function(i,item) {}を使用しています

$.getJSON(['http://www.example.com/contest_media', 'http://www.example.com/contest'], function(data) { do something}); 

$.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

私は基本的に、両方のjsonファイルのデータを同じ$.eachに使用したいと考えています。何か案は?

答えて

2

これは$.whenで行うことができます。あなたのケースでは、あなたのコードは、おそらくこれは、jQueryのバージョン1.5を必要とするというような...

$.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 doc page for $.when

注になります。

+0

あなたの信念は正しいです:) – guillem

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 
}); 
}); 
+0

私はそれを試しましたが、 '$ .each(data、function(i、item){}'を 'contest_media'に使用しています...そして' contests'を追跡しています。 – Patrioticcow

+0

投稿したいかもしれません – Owen

+0

私は基本的に両方のjsonファイルからの値を1つのhtmlに使用したい – Patrioticcow

関連する問題