Python 如何检查HTML中的某些复选框是否已选中?
在我制作的烧瓶网页上,用户可以选择几个选项。根据这些选项,我想在下一页向他们显示他们选择的选项。 我的HTML代码:Python 如何检查HTML中的某些复选框是否已选中?,python,html,checkbox,flask,Python,Html,Checkbox,Flask,在我制作的烧瓶网页上,用户可以选择几个选项。根据这些选项,我想在下一页向他们显示他们选择的选项。 我的HTML代码: <input type="checkbox" name="name1">name1<br> <input type="checkbox" name="name2">name2<br> <input type="checkbox" name="name3">name3<br> 我找不到如何形成这些if语句。我
<input type="checkbox" name="name1">name1<br>
<input type="checkbox" name="name2">name2<br>
<input type="checkbox" name="name3">name3<br>
我找不到如何形成这些if语句。我发现了一些关于:
.getvalue
但后来我犯了一个错误。我可以用单选按钮让它工作。当我给它们取相同的名字并给它们不同的值时:
option = request.form['name']
但是,这对复选框也不起作用,因为它只记得最后一个复选框,但我想要所有复选框。每个复选框都是唯一的,因此在表单中具有唯一的名称 这些值本身可以通过
request.form
字典访问,使用表单中的名称作为键。对于表单,复选框被命名为name1
、name2
和name3
。但是请注意,只有在表单上检查了它们时,它们才可用,否则它们的值不会发布到服务器
因此,在视图功能中,您可以如下方式访问它们:
name1 = request.form.get('name1')
if name1:
do_something(name1)
name2 = request.form.get('name2')
if name2:
do_something(name2)
name3 = request.form.get('name3')
if name3:
do_something(name3)
这将使用get()
在表单字典中执行查找。如果字典中存在该键,则返回该值。如果键不在字典中,则返回值None
正如@Kevin Guan所建议的,这可以在for循环中处理:
for checkbox in 'name1', 'name2', 'name3':
value = request.form.get(checkbox):
if value:
do_something(value)
建议:将
name1
和name2
和name3
放入一个列表,使用for
循环,而不是这三个if
语句。@KevinGuan:好建议,谢谢。
for checkbox in 'name1', 'name2', 'name3':
value = request.form.get(checkbox):
if value:
do_something(value)