Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/369.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/320.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Jinja2中插入字符串作为javascript是否正确?_Javascript_Python_String_Jinja2 - Fatal编程技术网

在Jinja2中插入字符串作为javascript是否正确?

在Jinja2中插入字符串作为javascript是否正确?,javascript,python,string,jinja2,Javascript,Python,String,Jinja2,我有一个带有Jinja2模板的烧瓶应用程序。我决定将所有字符串(我想在网页上显示的静态文本)从模板移动到单独的javascript文件中。这个文件加载在layout.html中,我正在插入字符串作为 document.write(home\u call\u to\u action['card\u text') 如果我想让它们更具可读性,有没有更好的方法?(w/o) Mb类似于: {% set print = <script>document.write({{ text }});<

我有一个带有Jinja2模板的烧瓶应用程序。我决定将所有字符串(我想在网页上显示的静态文本)从模板移动到单独的javascript文件中。这个文件加载在layout.html中,我正在插入字符串作为

document.write(home\u call\u to\u action['card\u text')

如果我想让它们更具可读性,有没有更好的方法?(w/o)

Mb类似于:

{% set print = <script>document.write({{ text }});</script> %}

<b>{{ print.home_call_to_action['card_text'] }}<b>
{%set print=document.write({{text}});%}
{{print.home_call_to_action['card_text']}

如果可以以某种方式将一个变量传递给另一个变量/

将脚本作为字符串插入会起作用,但这不是“正确”的方法。 您应该做的是将所有脚本放在静态目录中,并使用

<script src="path/to/script" type="text/javascript"></script> 

并确保
标记之间没有任何内容

编辑

我明白你想做什么了。要在模板中显示python字符串,你需要将它们作为参数传递给
render_template()
函数。然后将字符串放在模板中的
{}
标记中


您还应该检查这些字符串是什么?我想在网页上显示的静态文本静态文本不应该用javascript显示!使用
document.write
也不是一个好主意。您是否在寻找类似于«Flask Babel»的内容?因此答案是:不,对静态文本使用javascript是不正确的。请使用模板ate引擎。这就是我准备好的。问题是如何显示它们?