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

获取Flask中复选框的值

充浩波
2023-03-14
问题内容

我想获取Flask中复选框的值。我读过一篇类似的文章,并尝试使用和的输出,request.form.getlist('match')因为这是我使用的列表[0],但看来我做错了。这是获取输出的正确方法还是有更好的方法?

<input type="checkbox" name="match" value="matchwithpairs" checked> Auto Match
if request.form.getlist('match')[0] == 'matchwithpairs':
    # do something

问题答案:

你并不需要使用getlist,只是get如果只有一个给定名称的输入,尽管它不应该的事。你显示的内容确实有效。这是一个简单的可运行示例:

from flask import Flask, request

app = Flask(__name__)

@app.route('/', methods=['GET', 'POST'])
def index():
    if request.method == 'POST':
        print(request.form.getlist('hello'))

    return '''<form method="post">
<input type="checkbox" name="hello" value="world" checked>
<input type="checkbox" name="hello" value="davidism" checked>
<input type="submit">
</form>'''

app.run()

提交带有两个复选框的表单,然后['world', 'davidism']在终端中打印。请注意,html表单的方法是,post因此数据将位于中request.form

在某些情况下,了解字段的实际值或值列表很有用,看起来你只关心是否已选中该框即可。在这种情况下,更常见的是为复选框指定一个唯一的名称,然后仅检查它是否具有任何值。

<input type="checkbox" name="match-with-pairs"/>
<input type="checkbox" name="match-with-bears"/>
if request.form.get('match-with-pairs'):
    # match with pairs

if request.form.get('match-with-bears'):
    # match with bears (terrifying)


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

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

  • 问题内容: 当我点击提交按钮时,我试图打印出Flask中的复选框值。 app.py片段: HTML: 当我按下“提交”按钮时,它将返回“无”。 我也尝试过request.form.get() 这也将返回“无”。 问题答案: 提交HTML表单时,未选中的复选框不会发送任何数据。在Flask方面,由于没有接收到任何值,因此不会有key 。如果要检查是否选中了一个复选框(具有唯一的名称),只需测试其名称

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

  • 问题内容: 如何在jQuery中获得复选框的值? 问题答案: 要获取Value属性的值,您可以执行以下操作: 或者,如果您为其设置了或,则可以: 但是,无论是否选中它都会返回 相同的 值,这可能会造成混淆,因为它与提交的表单行为不同。 要检查是否已检查,请执行以下操作:

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