gpt4 book ai didi

javascript - 使用 Jinja2 为 JavaScript 转义字符串?

转载 作者:IT老高 更新时间:2023-10-28 20:40:06 29 4
gpt4 key购买 nike

如何使用 Jinja2 转义 HTML 以便在 JavaScript (jQuery) 中用作字符串?

如果我使用 Django 的模板系统,我可以这样写:

$("#mydiv").append("{{ html_string|escapejs }}");

Django 的 |escapejs filter会转义 html_string 中可能破坏此代码块的预期用途的内容(例如引号、特殊字符),但 Jinja2 似乎没有等效过滤器(我错了吗?)。

有没有比从 Django 复制/粘贴代码更简洁的解决方案?

最佳答案

Jinja2 有很好的过滤器 tojson .如果从字符串生成 json,它将生成用双引号“”括起来的字符串。您可以在 javascript 中安全地使用它。而且你不需要自己加上引号。

$("#mydiv").append({{ html_string|tojson }});

它也逃脱了<>&符号。因此,即使 sting 包含 XSS 危险的东西,如 <script>,它也是安全的。

关于javascript - 使用 Jinja2 为 JavaScript 转义字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12339806/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com