以下是一些我遇到麻烦的代码。基本上,我将一个空数组定义为全局变量(var playlist = []),然后尝试在jQuery $ .get调用中向其中添加元素。根据我在互联网上阅读的内容,我应该能够做到这一点!下面的代码给出了错误:“无法调用未定义的方法'play'。确实在函数中设置了playlist [0],在$ .get调用中提醒playlist [0]给出了预期的结果,但它不会在函数外部持续存在。

var playlist = [];
function playArtist(artist){
  $.get('media/songs/' + artist,
    function(data){
      for (var i in data){
        playlist[i] = setSong(data[i].Resource.name,'track' + data[i].Media.id,i + 1);
      }
    $('#track-total').text(parseInt(playlist.length));
    },'json'
  );
  playlist[0].play();
}

有人可以帮忙吗?

谢谢!

最佳答案

很有可能,在playlist返回之前就使用了$.get-因为ajax调用是异步的。它在成功回调中起作用,因为一旦请求完成,它将被触发,因此它将包含您期望的数据。

09-10 00:14
查看更多