如何将单引号符号(')捕获到JSON.parse的字符串中?

时间:2017-06-19 08:59:41

标签: javascript django python-3.x

我从Django获取了大量数据到模板中:

var dataFromServer = JSON.parse('{{ delivery_provider|jsonify }}');

任何时候进入Django数据时都会出现一些像这样的符号

{"id": 1, "company_name": "User's company", "address": null }

我的javascript代码崩溃,错误

Uncaught SyntaxError: Unexpected identifier

因为符号'对正面的字符串有错误的解释。

如何通过Python / Django转义此引号?或者,在正面存在一些解决方案吗?

1 个答案:

答案 0 :(得分:1)

看看escapejs template tag。 来自django docs:

  

转义用于JavaScript字符串的字符。

所以,在你的情况下,它可能是:

var dataFromServer = JSON.parse('{{ delivery_provider|jsonify|escapejs }}');

此外,如果您使用django-jsonify,则文档中有一个用法示例:

var items = {{ items|jsonify }};

这意味着,作者打算跳过您JSON.parse所在的部分,并将对象直接放到javascript代码中。