我正在使用JSON对象 here,我想访问图像,它是“结果”数组中的一个数组。我知道我必须循环,但不确定我是否正确执行
我的代码
function getVideos(art) {
$.ajax({
type: "GET",
url: 'http://imvdb.com/api/v1/search/videos?q=' + art,
dataType: 'json',
success: function (data) {
//alert(JSON.stringify(data.albums.name));
$('#videos').empty();
$.each(data.results.image, function (index, element) {
//alert(element.name);
$('#videos').append(element.results.image+ '<br/>');
});
},
error: function (data) {
$('#videos').html('<h3>Error in retrieval</h3>');
}
});
}
我刚刚编码
时更新 $.each(data, function (index, element) {
//alert(element.name);
$('#videos').append(element.results+ '<br/>');
});
我明白了
更新:
它适用于我现在我只是访问结果而不是图像
$.each(data.results, function (index, element) {
//alert(element.name);
$('#videos').append(element.image.o + '<br/>');
});
答案 0 :(得分:1)
您的问题出现在$.each
已经降低到data.results.image
的水平,然后您正在寻找results.image
。所以对于你的jQuery脚本,你正在寻找每一个data.results.image.results.image
,而这不存在。要遍历每个results
对象,您需要在$.each
上执行data.results
,然后查找element.image
。
这是一个有效的JSFiddle,它演示了这个:http://jsfiddle.net/7udv3uoh/4/
答案 1 :(得分:0)
更新:
它适用于我现在我只是访问结果而不是图像
$.each(data.results, function (index, element) {
//alert(element.name);
$('#videos').append(element.image.o + '<br/>');
});