从django视图返回的json数据中检索元素

在我的 django 视图中,我使用 simplejson 将一些搜索结果转换为 json

vals = [('supposed to be a toaster.', 8),('we can do more than one thing.',14),("we could make a bicycle.",51)]

result={'results':vals}

serialized = simplejson.dumps(result)

serialized=>

{"msg": "success!.",  "results": [["supposed to be a toaster.", 8], ["we can do more than one thing.", 14], [" we could make a bicycle.", 51]]}

我可以通过发送这个序列化的数据到JavaScript函数

return HttpResponse(serialized, mimetype="application/json")

在我的JavaScript函数(使用jQuery),我可以检索数据为

var data = $.parseJSON(res.responseText);
var results = data['results']

我想以下列格式显示结果

8  -- supposed to be a toaster. 
14 -- we can do more than one thing
51 -- we could make a bicycle

我怎么能在JavaScript中做到这一点? javascript变量 results 包含s

supposed to be a toaster.,8,we can do more than one thing.,14,we could make a bicycle.,51,

我必须使用 regex 来分隔项目吗?还是有更好的解决方案?使用正则表达式困难的是, 字符串有时可能包含数字。

修改

感谢Priyank和alexey28的回复,我试了一下

for(var item in results) {
    var time = results[item][1];
    console.log('time='+time);
    var resStr =results[item][0];
    console.log('resStr='+resStr);
    formatedResult += time+ " --- " + resStr+'
'; } $('#showresults').html(formatedResult);
1
额外 编辑
意见: 1
谢谢Priyank,这将工作
额外 作者 damon,
我想你可以通过使用简单的javascript for循环遍历数据['results']。控制台“数据”..看到萤火虫,你看...
额外 作者 Priyank Patel,

1 答案

变量数据将包含数组,因此您可以:

var formatedResult = "";
for(var i = 0; i < data.length; i++) {
    var item = data[i];
    formatedResult += item[1] + " --- " + item[0];
}
// Set html for you <div id="resultOutput"></div>:
jQuery("div#resultOutput").html(formatedResult);
0
额外
嗨,我修改了一下你的解决方案,并得到它的工作..请看我编辑的问题
额外 作者 damon,