我想将python中的JSON字符串导出到JS变量中。在
<script type="text/javascript">
var data = JSON.parse('{{ dataJSON }}');
console.log(data)
</script>
如果我打印dataJSON
的内容,我得到:[{"offset":0,"total":1,"units":[{"village_id":37,"village_name":"Glim
但是在JS中我得到了这个:JSON.parse('[{"offset":0,"total":1,"units":[{"village_id":37
我使用jinja2模板引擎:http://jinja.pocoo.org/docs/dev/templates/#if
我该怎么解决呢?在
您需要将数据标记为安全:
这可以防止它被HTML转义。没有必要以这种方式使用
JSON.parse()
;JSON是一个有效的JavaScript子集(至少在Pythonjson
模块生成有效子集的情况下)。在考虑到这并不能保证JavaScript的安全性。您可能需要调整JSON序列化。如果您使用的是Flask,则会提供一个
^{pr2}$tojson
过滤器,确保您获得JavaScript安全有效的JSON:如果不使用Flask,请对JSON进行后处理:
这是Python代码,用于生成一个可以在HTML(包括属性值)和JavaScript中安全使用的} function 。在
dataJSON
值。这里的积分归Flask ^{相关问题 更多 >
编程相关推荐