栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

如何在模板中将数据从Flask传递到JavaScript?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

如何在模板中将数据从Flask传递到JavaScript?

您可以

{{ variable }}
在模板的任何地方使用,而不仅限于HTML部分。所以这应该工作:

<html><head>  <script>    var someJavascriptVar = '{{ geopre[1] }}';  </script></head><body>  <p>Hello World</p>  <button onclick="alert('Geopre: {{ geopre[0] }} ' + someJavascriptVar)" /></body></html>

可以将其视为两个阶段的过程:首先,Jinja(Flask使用的模板引擎)生成文本输出。这将发送给执行他所看到的Javascript的用户。如果希望Flask变量作为数组在Javascript中可用,则必须在输出中生成数组定义:

<html>  <head>    <script>      var myGeopre = ['{{ geopre[0] }}', '{{ geopre[1] }}'];    </script>  </head>  <body>    <p>Hello World</p>    <button onclick="alert('Geopre: ' + myGeopre[0] + ' ' + myGeopre[1])" />  </body></html>

Jinja还提供了来自Python的更高级的构造,因此您可以将其缩短为:

<html><head>  <script>    var myGeopre = [{{ ', '.join(geopre) }}];  </script></head><body>  <p>Hello World</p>  <button onclick="alert('Geopre: ' + myGeopre[0] + ' ' + myGeopre[1])" /></body></html>

您还可以使用

for
循环,
if
语句等,请参阅Jinja2文档以获取更多信息。

另外,看看福特的答案,谁指出了

tojson
过滤器,它是对Jinja2标准过滤器集的补充。

编辑2018年11月:

tojson
现在已包含在Jinja2的标准过滤器集中。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/611031.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号