getJSON 警报不返回任何内容 - 数据问题?
getJSON alert not returning anything - data issue?
我在读取此数据时遇到问题:
看起来像这样:
{
"ok": true,
"messages": [
{
"text": "moo",
"username": "bot",
"type": "message",
"subtype": "bot_message",
"ts": "1448226157.000008"
},
{
"text": "boo",
"username": "bot",
"type": "message",
"subtype": "bot_message",
"ts": "1448225998.000007"
}
],
"has_more": true
}
代码如下:
$.getJSON("https://slack.com/api/channels.history?token=xxxx&channel=C0E&pretty=1", function(result){
$.each(result, function(i, field){
$("div").append(field + " ");
});
});
我得到的只是
[object object][object object]
如何让数据正确显示?
你的意思是这样的:
var data = `{"ok": true,"messages": [
{
"text": "moo",
"username": "bot",
"type": "message",
"subtype": "bot_message",
"ts": "1448226157.000008"
},
{
"text": "boo",
"username": "bot",
"type": "message",
"subtype": "bot_message",
"ts": "1448225998.000007"
}
],
"has_more": true
}`;
$(function() {
var result = $.parseJSON(data);
$.each(result, function(i, item) {
if (typeof item != "object") {
alert(item);
} else {
$.each(item, function(i, obj) {
alert(obj.ts);
});
}
});
});
样本fiddle:https://jsfiddle.net/4v0x34b1/
假设:
- 这是完整的 JSON
- 您想遍历消息
你的循环应该更像是:
$.each( result.messages,
function( i, msg ) {
$("div").append( msg.username + ": " + msg.text + " " );
}
);
(或您希望显示的任何字段)
我在读取此数据时遇到问题:
看起来像这样:
{
"ok": true,
"messages": [
{
"text": "moo",
"username": "bot",
"type": "message",
"subtype": "bot_message",
"ts": "1448226157.000008"
},
{
"text": "boo",
"username": "bot",
"type": "message",
"subtype": "bot_message",
"ts": "1448225998.000007"
}
],
"has_more": true
}
代码如下:
$.getJSON("https://slack.com/api/channels.history?token=xxxx&channel=C0E&pretty=1", function(result){
$.each(result, function(i, field){
$("div").append(field + " ");
});
});
我得到的只是
[object object][object object]
如何让数据正确显示?
你的意思是这样的:
var data = `{"ok": true,"messages": [
{
"text": "moo",
"username": "bot",
"type": "message",
"subtype": "bot_message",
"ts": "1448226157.000008"
},
{
"text": "boo",
"username": "bot",
"type": "message",
"subtype": "bot_message",
"ts": "1448225998.000007"
}
],
"has_more": true
}`;
$(function() {
var result = $.parseJSON(data);
$.each(result, function(i, item) {
if (typeof item != "object") {
alert(item);
} else {
$.each(item, function(i, obj) {
alert(obj.ts);
});
}
});
});
样本fiddle:https://jsfiddle.net/4v0x34b1/
假设:
- 这是完整的 JSON
- 您想遍历消息
你的循环应该更像是:
$.each( result.messages,
function( i, msg ) {
$("div").append( msg.username + ": " + msg.text + " " );
}
);
(或您希望显示的任何字段)