Ich kann die Elemente eines JSON-Array innerhalb eines JSON-Objekts nicht abrufen. Hier ist, was meine JSON wie folgt aussieht:
[
{
"category":9,
"channels":[
{
"id":5,
"title":"MYTITLE",
"active":true,
"recent":true,
"image":"/arts/736c1ad4-2dbe-40a6-859d-8dba89c26ec2.jpg",
"recent_tracks":{
"vip":"https://api.xyzsite.com/recent_tracks/vip-3.json",
"free":"https://api.xyzsite.com/recent_tracks/free-3.json"
},
"additional_vip_channels":[
{
"channel_name":"vip-3a",
"recent_tracks_uri":"https://api.xyzsite.com/recent_tracks/vip-3a.json",
"streams":{
"320":"http://streams.xyzsite.com/api/914/320/stream",
"64":"http://streams.xyzsite.com/api/914/64/stream",
"192":"http://streams.xyzsite.com/api/914/192/stream"
}
}
],
"streams":{
"free":"http://streams.xyzsite.com/api/31/56/stream",
"free_56":"http://streams.xyzsite.com/api/31/56/stream",
"free_128":"http://streams.xyzsite.com/api/31/128/stream",
"320":"http://streams.xyzsite.com/api/33/320/stream",
"64":"http://streams.xyzsite.com/api/33/64/stream",
"192":"http://streams.xyzsite.com/api/33/192/stream"
}
},
ich den folgenden Code verwenden, um die Werte zu erhalten:
$.getJSON('https://api.xyzsite.com/channels.json', function(response) {
$.each(response, function (index, value) {
var catId = value.category;
$.each(value.channels, function (index, value) {
XYZApp.channels.push({
categoryId: catId,
id: value.id,
name: value.title,
image: value.image,
recent_tracks: {
vip: value.recent_tracks.vip,
free: value.recent_tracks.free
},
streams: {
free_128: value.streams.free_128,
member_320: value.streams["320"],
member_64: value.streams["64"],
member_192: value.streams["192"]
}
});
console.log(value.additional_vip_channels);
});
});
}).
then ...
Ich kann die Werte bekommen, aber ich kann nicht die additional_vip_channels Array innerhalb der .each jQuery-Funktion gelesen . Ich habe bereits versucht:
- value.additional_vip_channels.channel_name
- value.additional_vip_channels [0] .channel_name
- value.additional_vip_channels [ "0"] CHANNEL_NAME
aber keiner von ihnen zu arbeiten. .
Und die Protokollausgabe ist auch hier:
Wie kann ich die channel_name und andere Daten in additional_vip_channels bekommen?
' value.additional_vip_channels [0] .channel_name' wäre der richtige Weg. –
try 'value.channels [" 0 "]. Additional_vip_channels [" 0 "]. Channel_name' –
Log zeigt den erwarteten Wert an. Was ist das Problem? Versuchen Sie einzelne Werte von' additional_vip_channels' auszugeben. – itzmukeshy7