Jquery 获取ajax响应中的字段
我发送ajax请求并得到如下响应Jquery 获取ajax响应中的字段,jquery,json,Jquery,Json,我发送ajax请求并得到如下响应 $.post("loadlatestreviews.html", function(data) { $("#latest").html(data); }); [ {"subject" : "xxx", "message" : "xxx", "dateTime" : "Mar 5 xxxx"}, {"subject" : "yyy", "message" : "yyy", "dateTime" : "Mar 5 yyyy"} ] 响应是如下所示的数
$.post("loadlatestreviews.html", function(data) {
$("#latest").html(data);
});
[
{"subject" : "xxx", "message" : "xxx", "dateTime" : "Mar 5 xxxx"},
{"subject" : "yyy", "message" : "yyy", "dateTime" : "Mar 5 yyyy"}
]
响应是如下所示的数据数组
$.post("loadlatestreviews.html", function(data) {
$("#latest").html(data);
});
[
{"subject" : "xxx", "message" : "xxx", "dateTime" : "Mar 5 xxxx"},
{"subject" : "yyy", "message" : "yyy", "dateTime" : "Mar 5 yyyy"}
]
如何读取字段主题
,消息
,日期时间
试试以下方法:
for(i in data) {
console.log(data[i]['subject'])
}
$.ajax({
url: 'loadlatestreviews.html'
method: 'POST',
dataType: 'json',
success: function(data) {
console.log(data);
for (d in data) console.log(data[d]);
}
});
这应该让你开始。此外,如果您实际上没有发送任何内容,可以省略方法:“POST”
参数,除非您确实需要POST
让我知道这对您的作用。使用$。each()
jquery方法:
$.each(data, function(i, obj){
var subj = obj.subject;
var msg = obj.message;
var date = obj.dateTime;
});
var data = JSON.parse(data);
$.each(data, function(i, item){
console.log(item.subject);
console.log(item.message);
console.log(item.dateTime);
});
您必须首先使用
JSON.parse(数据)解析字符串您必须循环数据,因为您的响应是一个包含json对象的数组。使用$。each()jquery方法可以迭代json响应数据
var data = JSON.parse(data);
$.each(data, function(i, itm){
// You can get each value in loop
console.log(itm['subject']);
console.log(itm['message']);
console.log(itm['dateTime']);
});
我希望这个答案对您有用。除了$之外。每个方法在解析JSON后,都可以按名称访问内部字段:
$.ajax({
url: 'loadlatestreviews.html'
method: 'POST',
dataType: 'json',
success: function(data) {
console.log(data);
var fields = JSON.parse(data);
var subject = fields["subject"];
}
});
@用户1432980你在说什么???如果这不起作用,那么您所发布的问题实际上并不是您得到的响应…@user1432980您确定您从html页面获得了json
?@A.Wolff控制台中的此类错误:TypeError:invalid'in'operator A
@Jai yes。全文是——[{“主题”:“xxxx”,“消息”:“xxxxx”,“日期时间”:“3月4日下午4:37:48”,“id”:1},{“主题”:“yyyy”,“消息”:“yyyy”,“日期时间”:“3月5日下午4:37:48”,“id”:2}]
@user1432980是的,必须是这样,因为您没有从html页面获取正确的json。您必须告诉javascript您的返回是json类型。它避免了这一行var data=JSON.parse(data)
$.post(“loadlatestreviews.html”,函数(数据){$(“#最新”).html(数据);},'json')代码>