4

如果我在 django 模板中使用单引号属性,如下所示:

<button data-json='{"color":"red"}'>click</button>

它会自动替换为:

<button data-json="{"color":"red"}">click</button>

封闭的“{}”被转换为“{}”,这使得 jQuery 无法读取该属性。我已经试过了

{% autoescape off %}

没有运气。

编辑:

作为一个实验,我尝试了一些完全没有引号的东西(在 template.html 中):

<button data=foo>click</button>

转换为(查看浏览器中的源代码)

<button data="foo">click</button>

(带引号)。

我知道你可以将整个事情重写为

data-json="{'color':'red'}"

然后做一个 javascript.replace()使它成为有效的 json - 但这对我来说似乎很丑陋。怎样才能阻止神奇的替换?

4

0 回答 0