Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/22.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
Javascript JSON-如何提取从django响应接收到的数据?_Javascript_Django_Json - Fatal编程技术网

Javascript JSON-如何提取从django响应接收到的数据?

Javascript JSON-如何提取从django响应接收到的数据?,javascript,django,json,Javascript,Django,Json,我的回答是这样的: [ {"attributeName1":"value1", "attributeName2":"value2"}, {"attributeName1":"value3", "attributeName2":"value4"} ] [{“0”:”k@k.com"}, {"1": "p@p.com"}, {"2": "n@n.com"}, {"3": "b@b.com}, {"4": "k1@k1.com"}, {"5": "z@z.com"}, {"6": "

我的回答是这样的:

[
    {"attributeName1":"value1", "attributeName2":"value2"},
    {"attributeName1":"value3", "attributeName2":"value4"}
]
[{“0”:”k@k.com"}, {"1": "p@p.com"}, {"2": "n@n.com"}, {"3": "b@b.com}, {"4": "k1@k1.com"}, {"5": "z@z.com"}, {"6": "k2@k2.com“}]

我试图通过以下html阅读此内容:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js" type="text/javascript"></script>
<script type="text/javascript">

    $(document).ready(function(){


        document.write('Getting JSON response...');
        $.getJSON(<my django url>,
            function(data) {
            alert("receiveng"+data["0"]);
            });
    });

</script>

</head>


<body>
</body>
</html>

问题在于您的JSON格式,无法对其进行分析/计算。例如,任何JSON对象如下所示:

[
    {"attributeName1":"value1", "attributeName2":"value2"},
    {"attributeName1":"value3", "attributeName2":"value4"}
]

但是在您的JSON示例中,您有
attributeName1
作为
0
。如果我们给变量命名为
0
,这是一样的。比如
define 0=k@k.com
。这是不可能的。请尝试将其更改为类似于
id0

的格式。谢谢大家的帮助

数据[0][0]符号有效

在运行循环直到数据[i][j]值未定义时, 我用过:

数据[i][i.toString()];
它工作得很好。

永远不要使用
文档。在任何类型的回调中写入
:它不应该在初始代码执行之后执行。填写一个段落并将其附加到页面中(或者在调试期间使用console.log).你能给我们展示一下你的观点吗?只要看看jQuery的小片段就可以了。屏幕上的响应是:[{“0”:k@k.com"}, {"1": "p@p.com"}, {"2": "n@n.com"}]当我运行html时,它只会给出一个空白页面,上面打印有JSON响应。请将代码添加到您的
django视图中,而不是创建一个对象数组。这可能不会解决您的问题,但会使以后更容易处理数据。JSON是有效的,没有专业代码将其转换为JavaScript对象数组的错误。这只是有点不寻常。解析后,您可以访问
“”k@k.com“
带有
数据[0][0]
。到目前为止,变量名不能是数字,但属性名可以。是的,你是对的。当我执行
$.parseJSON
时,它将其解析为对象。但是不可能执行
数据[“0”].0
。所以它会给出一个错误,或者当它与响应一起返回时,或者当它在
getJSON
handler中被接收时<代码>数据[0][0]
有效且有效。这也是为什么我们使用
arr[0]
访问数组元素而不是
arr.0
的原因。只要属性名是数字,就必须使用括号表示法来访问该值。