我想获得一个html选择标签与不同的县(从数据库中获得),当用户选择一个县,我想要另一个选择标签来启用和显示城市在那个县(我有一个sqlite数据库中的数据,其中县的城市数据库中的县的数据)。我在pycharm中使用了python,并且还没有找到任何好的教程。链接下拉式烧瓶,从sqlite数据库获取数据
有没有简单的方法使用一些扩展到烧瓶?我看到了关于sijax的一些东西,但我从来没有理解如何使用它。
我的代码是这样的,但我想这个城市的一部分必须通过一些JavaScript啄创建:
<div class="form-group">
<label for="inputCounty">County</label>
<select class="form-control" id="select_county" name="select_county">
<option value="">Choose county</option>
{% for county in counties %}
<option value="{{ county.id }}">{{ county.name }}</option>
{% endfor %}
</select>
</div>
<div class="form-group">
<label for="inputCity">City</label>
<select class="form-control" id="select_city" name="select_city">
<option value="">Choose city</option>
{% for city in cities %}
<option value="{{ city.id }}" class="{{ city.county }}">{{ city.name }}</option>
{% endfor %}
</select>
</div>
我尝试了“链式” -javascipt插件,但它没有工作,但这就是为什么我在选项标签上课。
现在各县和所有城市都被发送到html模板,但我不认为这将在以后可持续,因为我想在城市中添加另一个下拉菜单,所以我必须发送大量永远不会被使用的数据。
您可以尝试实施“占位符” - 首先隐藏的下拉元素。在用户在第一个下拉列表中选择一个县后填充并使其可见。烧瓶只会提供响应。返回html模板,javascript应该完成剩下的工作 – albert
不,没有刷新整个页面的Flask绝对没有办法单独完成这项工作。为了完成你所描述的内容,你必须发送一个AJAX请求回服务器并用JavaScript处理响应。 Jinja2无法帮到你;这正是HTTP工作的方式。我会以更详细的方式回应,但这个问题相当开放,我不知道你的堆栈是什么样的。 –