使用Jquery处理json
我有这样的想法:使用Jquery处理json,jquery,json,Jquery,Json,我有这样的想法: [{"pk": 1, "fields": {"name": "name 1", "description": "description 1", "image": "absolute url 1"}, "pk": 2, "fields": {"name": "name 2", "description": "description 2", "image": "absolute url 2"}}] 我需要访问字段,例如 $.getJSON("/json/", function(d
[{"pk": 1, "fields": {"name": "name 1", "description": "description 1", "image": "absolute url 1"}, "pk": 2, "fields": {"name": "name 2", "description": "description 2", "image": "absolute url 2"}}]
我需要访问字段,例如
$.getJSON("/json/", function(data) {
$.each(data, function(key, value) {
$.('#id1').append([data.pk]);
$.('#id2').append([data.fields.name]);
您的代码中有几个错误。此外,您的JSON格式不正确
var data = [{
"pk": 1,
"fields": {
"name": "name 1",
"description": "description 1",
"image": "absolute url 1"
},
"pk": 2,
"fields": {
"name": "name 2",
"description": "description 2",
"image": "absolute url 2"
}
}];
它只有一个具有多个相似属性的对象,最后一个相似属性覆盖上一个,这意味着对象的pk
属性(例如)设置为2。它可能应该具有以下结构(由2个对象组成的数组):
现在,您可以通过以下方式读取对象的属性:
$.each(data, function (index, value) {
console.log("pk: ", value.pk);
console.log("fields.name: ", value.fields.name);
});
还要注意,要创建jQuery对象,应该删除
:
$('#id1').append(value.pk);
你是说value.pk和value.fields……你需要提供更多关于你到底想做什么以及你在哪里遇到问题的信息。否则,没有人能真正帮助你。JSON是不正确的。您在同一对象中有重复的
pk
和字段
属性。对不起,我可能不正确,请提问。。我只需要访问“字段”属性(名称、描述、图像)并将其传递给DOM.Guffa,这些JSON由JSON.dumps(Python库)返回是的!我用了你的答案,非常感谢!
$('#id1').append(value.pk);