上位の要素を含むAPIリンクが1つあります。各要素から、2番目のAPI呼び出しの終わりを作成する必要があります。これにより、必要な残りの要素が取得され、それらが引き出されます。
最初のjsonが(urlphonebrands)で、3つの電話ブランド(Apple、Samsung、Nokia)が含まれているとします。2番目のjson呼び出しは、urlphonebrands / Nokia、またはurlphonebrands/Samsungまたはurlphonebrands/Appleのように自動的に構築された各ブランド名によって異なります。
色、バッテリー寿命、サイズなどのプロパティを取得するには、各ブランド名をループする必要があります。ただし、各色には、たとえば黒、白、赤など、別の選択肢のループがあります。私の最終結果は、
Apple
battery life:
6h
color:
blue
black
Samsung:
battery life:
6h
color:
blue
black
Nokia:
battery life:
3h
color:
blue
各トップ要素を正常にループできますが、最初のアイテムの最後のカラー要素しか取得できません。これは、2番目のループを誤って作成したことを示しています。それを数時間行って、私がいくつかの助けを使うことができると思いました。これは私が持っているものです、
$.getJSON("urlphonebrands", function(data){
var brandBlock = data[0]['name'];
$.each(data, function(index, brandBlock){
var brand = brandBlock.name;
$('#table').append('<tr><td>' + brand + '</td></tr>');
//It works fine until this point
$.getJSON("phonebrandsurl" + brand, function(data){
$.each(brand, function (index2, brand){
var color = data[0].name[0].color;
$('#table').append('<tr><td>' + color + '</td></tr>');
});
});
});
});
それは私に次のようなものを与えます、
Apple
blue
blue
Samsung
blue
blue
Nokia
blue
これは、2回目のAPI呼び出し後のconsole.log出力です。
[Object]
0: Object
brand: Array[17]
0: Object
battery life: "6h"
colors: Object
color: "blue"