我正试图获取name
的{{1}}并且它无效:我这样做:
track
结果如下:
$.ajax({
type: "GET",
url: "http://ws.audioscrobbler.com/2.0/?method=track.getInfo&api_key=b25b959554ed76058ac220b7b2e0a026&track="+yourTrack+"&artist="+yourArtist,
dataType: "xml",
success: function(xml) {
$(".loading").css("display", "none");
$(xml).find('track').each(function(){
var id = $(this).find('id').text();
console.log("Success!");
var song = $(this).find('track > name').text();
var name = $(this).find('artist name').text();
var album = $(this).find('album title').text();
$("#more").append("\nSong: " + song);
$("#more").append("\nArtist: " + name);
$("#more").append("\nAlbum: " + album);
$("#more").append("\n\nlast.fm ID: " + id);
});
}
});
帮助?
答案 0 :(得分:1)
此行中的选择器不正确:
var song = $(this).find('track > name').text();
$(this)
是<track>
元素。您正在寻找其中的另一个<track>
元素,这不是您需要的。您正在寻找<name>
,因此请改用:
var song = $('> name', this).text();