2014-02-05 42 views
2

所以我写了一些基于查询来搜索reddits api的代码,我希望它也显示注释。我在我的$.getJSON语句中嵌入了以下代码,该语句根据您的搜索查询抽取每个标题/帖子,现在我想为每个找到的结果显示注释树(因此为什么我将它嵌入了原始getJSON语句中)从Reddit的API中检索评论

$.getJSON("http://www.reddit.com/r/" + sub + "/comments/" + id + ".json?", function (data){ 
    $.each(data.data.children, function (i, item) { 
    var comment = item.data.body 
    var author = item.data.author 
    var postcomment = '<p>[Author]' + author + '<br>' + comment + '</p>' 
    results.append(postcomment) 
    }); 
}); 

我有一种感觉,我可能会在构建声明$.each错误或东西。我只是遵循我为其他getJSON语句所做的事情。有任何想法吗?

+0

我也注意到了JSONViewer,当我使用的URL来检索评论,它拉[0]和[1],其原始数据0帖子和1有评论的数据。也许我需要指定看看[1]? – mickdeez

回答

4

reddit json包含两个对象:帖子和评论。这些评论都位于数据[1]这应该工作:

$.getJSON("http://www.reddit.com/r/" + sub + "/comments/" + id + ".json?", function (data){ 
    $.each(data[1].data.children, function (i, item) { 
    var comment = item.data.body 
    var author = item.data.author 
    var postcomment = '<p>[Author]' + author + '<br>' + comment + '</p>' 
    results.append(postcomment) 
    }); 
}); 
+0

我把它带回去......它有时会起作用。不过其他时间。有点奇怪。这是我的小提琴,如果你想看看 - http://jsfiddle.net/elliotmersch/bpZXL/ – mickdeez

+0

不,它正在工作。除了发布在div的底部而不是在每个帖子之后。我想我只需要一个新的div。 – mickdeez