Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/87.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用Jquery处理json_Jquery_Json - Fatal编程技术网

使用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);