首页 > 解决方案 > html表单选择动态预选值(烧瓶)

问题描述

我有一个用烧瓶编写的非常简单的应用程序。在主页上,我有一个表单,您可以在其中从几个下拉选项中选择一些设置。像这样:

    <form action="/" method="post">
        Choose year:
        <div class="form-group">
            <select class="form-control" id="year" name="year">
                    <option value='years' selected>years</option>
                    <option value='quarters' >quarters</option>
                {% for year in years %}
                    <option value={{year}}>{{year}}</option>
                {% endfor %}
            </select>
        </div>        
            <div class="form-group">
            <button class="btn btn-default" type="submit">Show statistics</button>
        </div>
    </form>

现在预选了其中一个值。但是,当我选择不同的设置时,单击提交并再次呈现页面(根据新设置),我希望预选的不是第一次预选的值,而是我选择的值。这样做的正确方法是什么?

标签: htmlflaskselect

解决方案


使用{% if %}语句来决定option应该选择哪个。

<select class="form-control" id="year" name="year">
    <option value='years' {% if choice == 'years' %} selected {% endif %}>years</option>
    <option value='quarters' {% if choice == 'quarters' %} selected {% endif %}>quarters</option>

    ...
</select>

wherechoice是您传递给模板的变量,该变量包含您在提交表单时选择的值。


推荐阅读