如何在Python / flask中读取HTML复选框的状态

时间:2015-11-10 17:39:34

标签: python html checkbox flask

我已经构建了一个工作网页和python / flask程序,但无法弄清楚如何读取python代码中的网页状态复选框。我已经弄清楚如何从python 设置一个复选框,而不是如何阅读它。以下是其中一个复选框的html:

<div class="slideThree">    
    <input type="checkbox" value="None" id="chk_01" name="chk_01" {{chk_01_checked}}/>
    <label for="chk_01"></label>
</div>

html代码与python程序位于一个单独的文件中。看起来我需要使用&#39; request&#39;的一些组合。或者&#39;得到&#39;说明但无法找到有关如何操作的明确示例。我是python和html的新手,所以任何帮助都会受到赞赏。

2 个答案:

答案 0 :(得分:0)

复选框存在于浏览器中,python代码在服务器上运行。基本上,服务器不会知道复选框状态。如果你想改变它,你需要连接两个。

那里有两个选择:

(1):复选框包含在表单中,当用户点击提交时,状态包含在表单数据中。

(2):您将事件处理程序分配给复选框的状态。在事件处理程序上,您将新状态发布到某些AJAX资源。在Flask中,您为AJAX URL添加路由并接收状态更改。

答案 1 :(得分:0)

这是我想要做的。我在html中添加了一个动作(表单动作)行,然后在python中添加了一个函数来处理它。但是python函数从未执行过,所以我显然没有正确的东西。

这是html:

<td style="width:auto">
<form action="ManToggle">
<div class="slideThree">
    <input type="checkbox" value="None" id="chk_01_Man" name="chk_01_Man" />
    <label for="chk_01_Man"></label>
</div>
</form>
</td> 

这是python:

@app.route('/ManToggle', methods=['GET'])
def ManToggleUpdate():
    print ("function executes")
    test = request.form['chk_01_Man']
    if test == True :
        # do something
    else :
        # do something else