从Django vi以json形式返回的数据中检索元素

2024-06-20 14:57:38 发布

您现在位置:Python中文网/ 问答频道 /正文

在我的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)

序列化=>

^{pr2}$

我可以通过

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包含

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

我要用regex来分隔这些项目吗?还是有更好的解决办法?使用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+'<br>';
}
$('#showresults').html(formatedResult);

Tags: totimevarmorebedoonecan
1条回答
网友
1楼 · 发布于 2024-06-20 14:57:38

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

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

相关问题 更多 >