我可能很容易解决问题。我正在尝试使用jquery解析此JSON文件:
我的jQuery代码如下:
$.post("/xhr/fav_switch", {event_id: event_id}, function(data) {
event = jQuery.parseJSON(data);
alert(event.pk);
});
但无论我在警报中尝试访问哪个字段,它总是说undefined
。你知道我做错了什么吗?任何帮助将不胜感激:)
答案 0 :(得分:3)
$.post("/xhr/fav_switch", {event_id: event_id}, function(data) {
var events = jQuery.parseJSON(data);
var event = events[0];
alert(event.pk);
});
你得到一个数组(有一个元素),所以event是一个数组。您需要获取数组的第一个元素才能获取事件对象本身。
答案 1 :(得分:1)
首先,您的数据是一个只包含一个元素的数组,因此您需要将其作为:
进行访问event[0].pk
event[0].fields.updated
// etc
但jQuery ajax方法通常也会为你解析JSON,所以你可能会发现你可以说:
data[0].pk
data[0].fields.updated
没有需要使用event = jQuery.parseJSON(data)
。