iTunes搜索API未定义第一个结果

时间:2012-06-07 17:32:09

标签: json api itunes

嗨,我在itunes api专辑榜上挣扎了很长时间。

我的问题是第一个<li></li>中的缩略图和专辑标题总是以未定义的形式返回。

该代码基于itunes艺术家搜索,按预期工作,但我的专辑列表版本总是给出这个故障。

$(document).ready(function(){
  var searchTerm = '909253';
  $.getJSON( "http://itunes.apple.com/lookup?id=" + searchTerm + '&limit=30' + '&entity=album' + '&callback=?', function(data) {
    $.each(data.results, function() {
      $('<li></li>')
        .hide()
        .append('<img src="' + this.artworkUrl60 + '" />' ) 
        .append('<span><a href="http://itunes.apple.com/search?term=' 
          + this.artistName + '">' + 'Artist: ' + this.artistName
          + '</a> ' + '<br />Album Title: '  + this.collectionName + '</span>')
        .appendTo('#results')
        .fadeIn();
    });        
    $("#results").listview("refresh");
  });
});    

http://jsfiddle.net/tris_wood/u2sYe/2/

我在itunes api上看过类似的帖子,但没有我能找到的解决方案。

非常感谢任何帮助。

1 个答案:

答案 0 :(得分:1)

这是因为第一个返回的元素始终是父元素,在本例中是艺术家。

如果您要求:

http://itunes.apple.com/lookup?id=909253&entity=album

你会得到(正如你在wrapperType中看到的):

0) Artist information
1) First album
2) Second album

不幸的是,您的代码暂时处于脱机状态,我无法检查我的直觉是否正确。