1

我正在尝试显示display_name此 JSON 页面的所有值(最大值为 25),但是出现“无法读取未定义的属性”的错误。我的代码如下:

$(document).ready(function(){
  var url= "https://api.twitch.tv/kraken/channels/sodapoppin/follows?client_id=40pbvj5imeg5ma36gla9p8ryfkyyyb&limit=100";
  $("button").click(function() {
    $.getJSON(url, function(result) {
      $.each(result, function(string, field) {
        // $.each(string, function(k, v) {
        $("#fccStatus").append(string.follows.user + " ");
        // });
      });
    });
  });
}); 

提前谢谢你们!

4

1 回答 1

-1

有两个问题。首先,您需要迭代result.follows,而不是result. 其次,string参数实际上是数组中当前对象的整数索引。你需要field改用。试试这个:

$(document).ready(function() {
  var url = "https://api.twitch.tv/kraken/channels/sodapoppin/follows?client_id=40pbvj5imeg5ma36gla9p8ryfkyyyb&limit=100";
  
  $("button").click(function() {
    $.getJSON(url, function(result) {
      $.each(result.follows, function(i, field) {
        $("#fccStatus").append('<p>' + field.user.display_name + '</p>');
      });
    });
  });
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

<button>Click me</button>
<div id="fccStatus"></div>

请注意,为了清楚起见,我更改了输出 HTML 以显示用户display_name包裹在p元素中,但如果需要,可以轻松修改。

于 2018-10-11T16:56:39.947 回答