$('#upload').click(function(){
$('#main .right').html("{% extends 'a.html' %}")
})
Вы имеете в виду {% include %}
?Я не могу понять, для чего было бы полезно помещать extends
в блок скрипта.
Если вы на самом деле успешно шаблонизируете в этот блок {% ... %}
, значит, вы включаете загрузку HTML-контента.Содержимое HTML обычно содержит много новых строк и символов "
, которые сразу же завершают строковый литерал JavaScript внутри вызова html()
и вызывают большую старую синтаксическую ошибку.(Другие символы, которые могут вызвать проблемы, включают \
и </
.)
Если вы хотите, чтобы это работало, вам нужно взять выходные данные шаблона a.html
и кодировать его, используя строку JavaScriptбуквальные правила.Для обычной строки это можно сделать с помощью фильтра escapejs
в Django или библиотеки json
в целом.Однако я не думаю, что есть какой-либо способ фильтрации по выводу команды {% include %}
.
Как насчет включения HTML в скрытую часть документа и показа / скрытия его из скрипта?