【发布时间】:2016-05-07 22:04:45
【问题描述】:
当用户单击链接时,我希望 Jinja 设置一个名为 {{ contact_clicked }} 的变量,该变量等于 {{ contact }}。
我可以做到<a href="/?{% contact_clicked = contact %}">.....</a>。但是,该变量在 for 循环之外是不可访问的。
我尝试创建一个列表,然后将一个变量附加到列表中,然后访问列表中的第一个变量。但是,当页面重新加载(或任何其他时间)时,列表不会擦除,因此该变量会被永久设置。
编辑 1:
我的 for 循环如下所示:
{% set contact_clicked = "" %}
{% for contact in contact_list %}
{% if contact in fake_list %}
<h4 style="color: rgb(200,100,100)"> {{ contact }} NO SUCH ACCOUNT </h4>
{% else %}
<a href="/?{% contact_clicked = contact %}"> <h4 style="color: rgb(200,200,200)"> {{ contact }} </h4> </a>
{% endif %}
{% endfor %}
我说的是 Jinja2 for 循环,不是 Python for 循环。
【问题讨论】:
-
您提到了一个 for 循环,但没有显示它。请添加更多代码,以便我们查看上下文。
-
根据您的描述以及我是如何习惯使用 jinja2 或类似软件的,我不确定您是否以正确的方式考虑这个问题。我习惯于让 Jinja2 在服务器(运行 Flash、Django 或其他 Web 框架)上生成一个 HTML 页面,然后将其传递给客户端......除非你想刷新整个页面,否则客户端点击需要由javascript处理。您能否阐明您的环境是如何设置的,并包含更多的 html/etc。对于上下文
标签: python html python-2.7 jinja2