我目前正在使用仪表板工具。在这里,我使用Python来浏览数据帧,并根据数据创建过滤器。我有以下代码作为示例输出:
<form name="FormYear" method="post">
<div class="panel">
<div id="checkboxes">
<div class="filterdiv">
Forecast Year
<button class="filterButton clearfilter" type="submit" name="submit" value="clearFilterYear">
<i class="glyphicon glyphicon-remove"></i>
</button>
<button class="filterButton filter" type="submit" name="submit" value="filter">
<i class="glyphicon glyphicon-filter"></i>
</button>
</div>
<input value = "1" type="hidden" name="FormYear">
<input type="radio" name="Year" id="Year2016" value="2016" checked class="checkbox" >
<label class="checkboxLabel" for="Year2016">2016</label>
<input type="radio" name="Year" id="Year2017" value="2017" class="checkbox" >
<label class="checkboxLabel" for="Year2017">2017</label>
<input type="radio" name="Year" id="Year2018" value="2018" class="checkbox" >
<label class="checkboxLabel" for="Year2018">2018</label>
</div>
</div>
</form>
上面的代码包含2个提交按钮(一个用于提交选择,一个用于清除所有选择)和3个radiobuttons。为了设置单选按钮的样式,我正在使用标签和CSS。
仪表板将包含许多此类表单,我希望只要用户选中复选框或单选按钮,就可以提交表单。
基本上,每当用户更改过滤器时,我都需要让网站点击第二个按钮。
可以这样做吗?
答案 0 :(得分:0)
您可以使用Flask-Sijax,它可以帮助您为Flask应用添加Sijax支持。 Sijax是一个易于使用的AJAX库。
@flask_sijax.route(app, '/hello')
def hello():
def say_hi(obj_response):
obj_response.alert('Hi there!')
if g.sijax.is_sijax_request:
# Sijax request detected - let Sijax handle it
g.sijax.register_callback('say_hi', say_hi)
return g.sijax.process_request()
return _render_template('sijaxexample.html')