我发现了这篇文章,这正是我想要做的事情:
How to extract url data from Reddit API using JSON
我修改了提供的jsfiddle( NSFW http://jsfiddle.net/DHKtW/170/)来阅读:
$.getJSON("http://www.reddit.com/r/pics/.json?jsonp=?", function(data) {
$.each(data.data.children, function(i,item){
console.log($('.score.likes').html(item));
});
});
我的目标是在给定页面上收集upvotes的总数。当您运行此命令并查看控制台时,将返回对象但不返回实际数字。我以为只在选择器上调用html会返回投票数,但显然是错的。有没有更好的方法呢?
答案 0 :(得分:4)
您需要console.log(item)
才能看到返回的数据。然后,我们可以看到item.data.score
返回帖子的分数。
$.getJSON("http://www.reddit.com/r/pics/.json?jsonp=?", function (data) {
$.each(data.data.children, function (i, item) {
console.log(item.data);
$('<div/>', {
text: 'Post ' + item.data.permalink + ' has a score of ' + item.data.score
}).appendTo('#images');
});
});
http://jsfiddle.net/DHKtW/353/
您看到没有数字的对象的原因是因为您调用了console.log($('selector'))
并且返回了jQuery对象而不是请求中的json。