0

我正在尝试通过 AJAX 调用将数据结果从 django 发送到 JSON 中的 javascript。在 django 我有以下变量

results = {key1:[1,2,3],
           key2:[[name1,lat1,lng1],[name2,lat2,lng2],[name3,lat3,lng3]]}

然后,我可以成功返回一个 json 转储,results 我已验证我的 javascript ajaxSuccess 函数捕获的数据完全正确results

我希望输出如下:

var1 = [1,2,3]
var2 = [name1, lat1, lng1]
var3 = [name2, lat2, lng2]
var4 = [name3, lat3, lng3]

在 javascript 中解析结果的最佳方法是什么,我应该先在 django 中以其他方式重新格式化它吗?

4

3 回答 3

1

根据您对问题的更新,这里有一个 jsfiddle,其中包含您正在寻找的确切输出。

http://jsfiddle.net/jhanifen/7RfNs/

和一个使用 jquery 循环的 jsfiddle

http://jsfiddle.net/jhanifen/7RfNs/1/

根据您想要解析和使用结果的方式,尝试使用 jquery,如评论中所述的 karthikr

http://api.jquery.com/jQuery.each/

如 jquery 文档中所述

jQuery.each(obj, function(i, val) {
  $("#" + i).append(document.createTextNode(" - " + val));
});

您也可以在 django 中使用 json.dumps,这使得输出 json 变得非常容易,请参阅这篇文章

使用 Django 和 Python 创建 JSON 响应

return HttpResponse(json.dumps(response_data), mimetype="application/json")
于 2013-08-07T02:52:47.980 回答
1

您可以在 javascript 中使用 JSON.parse(results) 或 eval(results) 来解析结果。

于 2013-08-07T02:55:51.473 回答
1

只需使用ajax()

$.ajax({ 
    type: 'GET', 
    url: 'http://example/foo/', 
    dataType: 'json',
    success: function (data) { 
        console.log(data); // do anything you want with your parsed data
    }
});
于 2013-08-07T03:19:52.163 回答