Как мне избежать HTML с помощью Jinja2, чтобы его можно было использовать как строку в JavaScript (jQuery)?
Если бы я использовал систему шаблонов Django, я мог бы написать:
$("#mydiv").append("{{ html_string|escapejs }}");
Django |escapejs
filter ускользнет от вещей в html_string
( например, кавычки, специальные символы), которые могут нарушить предполагаемое использование этого блока кода, но Jinja2, похоже, не имеет эквивалентного фильтра (я ошибаюсь?).
Есть ли более чистое решение, чем копирование/вставка кода из Django?
html_string
не содержит вредных символов. - person meshy   schedule 09.09.2012json.dumps()
. - person Martijn Pieters   schedule 09.09.2012tojson
фильтр. Кажется, это выводит его как строку с экранированием JS, а не как правильный объект JSON, поэтому вам нужно будет вызватьvar my_data = JSON.parse({{ my_string|tojson }})
- person Hartley Brody   schedule 21.03.2018