我有一个html文件,其中包含以下Jinja2模板语言的代码片段。
{% block head %}
{{ super() }}
{% with textarea="txtMessageContent" %}
{% include "vvv/vvv/TinyMCE.html" %}
{% endwith %}
{% endblock %}
我正在尝试将变量textarea传递给包含以下代码的TinyMCE.html模板。
{% block InitTinyMCE %}
<script src="https://x.x.x/x/js/jquery-2.1.0.min.js"></script>
<script type="text/javascript" src="/static/js/tinymce/tinymce.min.js"></script>
<script type="application/javascript">
alert(textarea);
$(document).ready(function (textarea){
tinymce.init({
selector: textarea,
menubar: true,
plugins: "hr code preview",
content_css:"https://x.x.x/x/css/backend-boostrap.css",
remove_linebreaks: false,
convert_newlines_to_brs: true
});
});
</script>
{% endblock %}
当我加载页面时,我看到变量没有被传递。由于以下错误,我可以确认这一点。
textarea未定义。
答案 0 :(得分:0)
你需要在Jinja
中的变量周围放置双花括号{% block InitTinyMCE %}
<script src="https://x.x.x/x/js/jquery-2.1.0.min.js"></script>
<script type="text/javascript" src="/static/js/tinymce/tinymce.min.js"></script>
<script type="application/javascript">
$(document).ready(function (){
tinymce.init({
selector: "{{ textarea }}",
menubar: true,
plugins: "hr code preview",
content_css:"https://x.x.x/x/css/backend-boostrap.css",
remove_linebreaks: false,
convert_newlines_to_brs: true
});
});
</script>
{% endblock %}