如何将服务器端Django字符串数组提供给客户端JavaScript数组?

时间:2013-05-19 02:59:26

标签: django

在我的服务器上,阵列显示如下:

data = [u'Data1', u'Data2', u'Data3']

在Django中,我使用以下方法将数据发送到客户端:

render(..., {'data': data})

在客户端,我尝试使用以下代码在JavaScript中进行渲染:

{{data}}

并获得:

[u'Data1B', u'Data2', u'Data3']

如何修复此编码问题?

2 个答案:

答案 0 :(得分:2)

你需要safe转义字符串才能正常工作

{{data|safe|escape}}

答案 1 :(得分:0)

您还可以将数据作为json对象传递。在view.py

from django.utils import simplejson
...
render(...{'data':simplejson.dumps(data)})

然后在你的javascript函数中

var data = JSON.parse({{data}}) 

但正如@karthikr已经说过的那样,|safe绝对足够你的情况。