烧瓶手柄形式与单选按钮

时间:2015-07-27 20:29:52

标签: python-3.x flask radio-button

我的index.html看起来像这样

<form name="myForm" action="" method="post" onsubmit="">
<p>
<input type="radio" name="options" id="option1"> Option1 <br>
<input type="radio" name="options" id="option2"> Option2 <br>
<input type="radio" name="options" id="option3"> Option3 <br>
</p>
<p><input type=submit value=Next></p>
</form>

我需要获取所选按钮。但由于他们都有相同的名字,我不能写request.form['option']。如果我的名字不同,用户可以进行多项选择。

是否有办法通过它的ID来获取按钮的状态?如果不是,那么处理这种形式最简单的方法是什么?

3 个答案:

答案 0 :(得分:27)

您应该将value属性添加到每个input字段:

<input type="radio" name="options" id="option1" value="option1"> Option1 </input><br>
<input type="radio" name="options" id="option2" value="option2"> Option2 </input><br>
<input type="radio" name="options" id="option3" value="option3"> Option3 </input><br>

在您的烧瓶路线中,您可以阅读所选的选项:

option = request.form['options']

您将获得所选单选按钮的value

答案 1 :(得分:2)

或另一种简单的方法是使用

getlist()

<input type="radio" name="options" id="option1" value="option1"> Option1 </input<br>
<input type="radio" name="options" id="option2" value="option2"> Option2 </input<br>
<input type="radio" name="options" id="option3" value="option3"> Option3 </input<br>

然后在烧瓶文件中获取选定的值:

option = request.form.getlist('options')

nb:您可以选择一个或多个值,它将保存在列表中

答案 2 :(得分:1)

对于遇到 400 Bad Request: Key Error 类型错误的任何人,请尝试以下方法之一:

  • 确保您要求客户选择无线电选项
  • 使用 try/except[/else/final] 语句来处理客户没有选择选项并且您不需要他们选择一个选项的情况

我会回复@sarthak 的评论,但我对此没有足够的声誉。