当前位置: 首页 > 面试题库 >

Flask没有获得复选框的值

养振濂
2023-03-14
问题内容

当我点击提交按钮时,我试图打印出Flask中的复选框值。

app.py片段:

@app.route('/test2', methods=['GET', 'POST'])
def test2():

    if request.method == "POST":
        if request.form['submit'] == 'submit':
            print(request.args.get('check'))

    return render_template('test.html')

HTML:

<div class="container"><br>
  <form role="form" method="post">
    <input type="checkbox" name="check" value="test">
    <button type="submit" name="submit" value="submit">Submit</button>
  </form>
</div>

当我按下“提交”按钮时,它将返回“无”。

我也尝试过request.form.get()

@app.route('/test2', methods=['GET', 'POST'])
def test2():

    if request.method == "POST":
        if request.form['submit'] == 'submit':
            print(request.form.get('check'))

    return render_template('test.html')

这也将返回“无”。


问题答案:

提交HTML表单时,未选中的复选框不会发送任何数据。在Flask方面,form由于没有接收到任何值,因此不会有key 。如果要检查是否选中了一个复选框(具有唯一的名称),只需测试其名称是否在中form。如果要检查选中多个复选框(具有相同名称)中的哪个,请getlist改用。

一个布尔值:

<input type="checkbox" name="check">
checked = 'check' in request.form

多种选择:

<input type="checkbox" name="check" value="1">
<input type="checkbox" name="check" value="2">
<input type="checkbox" name="check" value="3">
selected = request.form.getlist('check')
any_selected = bool(selected)


 类似资料:
  • 问题内容: 我想获取Flask中复选框的值。我读过一篇类似的文章,并尝试使用和的输出,因为这是我使用的列表,但看来我做错了。这是获取输出的正确方法还是有更好的方法? 问题答案: 你并不需要使用,只是如果只有一个给定名称的输入,尽管它不应该的事。你显示的内容确实有效。这是一个简单的可运行示例: 提交带有两个复选框的表单,然后在终端中打印。请注意,html表单的方法是,post因此数据将位于中。 在某

  • 问题内容: 我在Flask Python中使用Bootstrap。 选中复选框后,父标签的类为“活动”,我想获取是否选中了复选框。有什么办法吗? 问题答案: 你可以尝试以下操作: 在烧瓶中: ``` value = request.form.getlist(‘check’) value = [u’edit’] ``` 你还可以获取具有相同名称属性的多个复选框的值。

  • 问题内容: 所以我得到的代码看起来像这样: 我只需要Javascript来获取当前选中的任何复选框的值。 编辑 :要添加,将只有一个复选框。 问题答案: 对于现代浏览器 : 通过使用: 没有_以下内容的 _纯javascript :

  • 我有复选框数组使用不同id的映射,所以不能为状态检查设置反应钩子,我尝试使用另一种方式,但仍然没有找到答案。我使用React-bootstrap的react钩子。

  • 所以我有这样的代码: 我只需要Javascript来获取当前选中的任何复选框的值。 编辑:要添加,只有一个复选框。

  • 问题内容: 我有一组具有相同名称的输入复选框,并且我想确定已使用JavaScript选中了哪些复选框,如何实现呢?我只知道如何获取所有复选框,如下所示: 问题答案: 一个简单的for循环,用于测试属性并将选中的属性附加到单独的数组中。从那里,如果需要,您可以进一步处理数组。