[英]How to parse json response from twitter
So I'm doing a request like this: https://api.twitter.com/1/statuses/user_timeline.json?include_entities=true&include_rts=true&screen_name=twitterapi&count=3 所以我正在做这样的请求: https : //api.twitter.com/1/statuses/user_timeline.json?include_entities=true&include_rts=true&screen_name=twitterapi&count=3
Now, I'm using jQuery, and I'm trying to display the data like this: 现在,我使用的是jQuery,并且尝试显示如下数据:
success: function(data, textStatus, xhr) {
if(data)
{
for (var i = 0; i < data.length; i++) {
$("#at .tweet-message").html(data.text);
};
I want to display 3 tweets, what I'm doing wrong? 我想显示3条推文,我做错了什么?
You're missing the index when referencing data array elements (apart from some braces): 引用数据数组元素时(除了一些花括号),您缺少索引:
success: function(data, textStatus, xhr) {
if(data) {
for (var i = 0; i < data.length; i++) {
$("#at .tweet-message").html(data[i].text); //here
}
}
}
edit 编辑
It shows only one tweet because you're using html()
instead of, for example, append()
. 它仅显示一条推文,因为您使用的是
html()
而不是例如append()
。 You substitute the element content in each iteration. 您可以在每次迭代中替换元素内容。
Another way by chaching data.length
. 通过缓存
data.length
另一种方式。 Just extented soulcheck's answer 只是扩展了灵魂检查的答案
success: function(data, textStatus, xhr) {
var i = 0,
len = data ? data.length : 0;
for ( ; i < len; i++ ) {
$("#at .tweet-message").html(data[i].text);
}
}
len = data ? data.length : 0
len = data ? data.length : 0
means: len = data ? data.length : 0
表示:
if ( data ) {
len = data.length;
}
else {
len = 0;
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.