【问题标题】:How to get third level of data in JSON response?如何在 JSON 响应中获取第三级数据?
【发布时间】:2015-07-16 18:41:11
【问题描述】:

我想从 API 获取 Flickr 数据:

我使用了以下 API https://api.flickr.com/services/rest/?method=flickr.photosets.getList&api_key=c87d0837c5bea1ac860102de95eee254&user_id=134029050%40N05&page=1&per_page=10&format=rest

我的代码是:

 <script type="text/javascript">
    (function () {
        var flickerAPI = "https://api.flickr.com/services/rest/?method=flickr.photosets.getList&api_key=c87d0837c5bea1ac860102de95eee254&user_id=134029050%40N05&page=1&per_page=10&format=json&nojsoncallback=1";
        $.getJSON(flickerAPI, {
            tags: "mount rainier",
            tagmode: "any",
            format: "json"
        })
.done(function (data) {
    // debugger;
    $.each(data.photosets.photoset, function (i, item) {
        alert(data.photosets.photoset[i].title);

        var span = $('<span />').html(item[i]["title"]);
        $("#images").append(span);


    });
});
    })();
</script>

我想获得“photoset”元素的标题,我能够获得“photoset”的属性,但我不知道如何在“photoset”中获取数据。

请帮帮我。

【问题讨论】:

  • 在下面查看我的答案。

标签: jquery arrays json


【解决方案1】:

标题实际上存储在标题对象的 _content 中。所以你需要使用:

data.photosets.photoset[i].title._content

或者在你的循环中,它只是:

item.title._content

在这里提琴:https://jsfiddle.net/dho9xbt8/

【讨论】:

  • JSON 结构没有发布问题。
  • 这个问题发布了所有需要的代码。这是一个简单的 get 请求,任何人只需访问 get 请求中的 URL 并查看 JSON 响应。
【解决方案2】:

您只需要简单地使用:item.title._content 来获取 title

的第三级 json

请检查我的代码以获得结果

(function () {
        var flickerAPI = "https://api.flickr.com/services/rest/?method=flickr.photosets.getList&api_key=c87d0837c5bea1ac860102de95eee254&user_id=134029050%40N05&page=1&per_page=10&format=json&nojsoncallback=1";
        $.getJSON(flickerAPI, {
            tags: "mount rainier",
            tagmode: "any",
            format: "json"
        })
.done(function (data) {
    // debugger;
    $.each(data.photosets.photoset, function (i, item) {
        //console.log(data.photosets.photoset[i].title._content);
        alert(item.title._content);
        var span = $('<span />').html(item.title._content);
        $("#images").append(span);


    });
});
    })();
&lt;script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"&gt;&lt;/script&gt;

【讨论】:

  • @BenFried 不,我真的不知道你有什么答案。因为我当时正在研究sn-p。并对其进行调试...
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多