【发布时间】:2021-08-26 22:18:42
【问题描述】:
我有一个输入字段,我不希望有 2 个具有不同操作的按钮。
<!-- Search box -->
<input type="text" class="form-control mb-2 mr-sm-2" placeholder="UserID" name="search"
aria-describedby="useridHelp" required pattern="[0-9]{5,7}">
<!-- Submit/Update button -->
<button id="add-update" type="button" class="btn btn-primary mb-2 mr-2">Add/Update</button>
<!-- Remove button -->
<button id="remove" type="button" class="btn btn-primary mb-2">Remove</button>
如果我将“添加更新”按钮设置为type="submit" 并在 Flask 中使用if request.method == 'POST':,那么我提交该字段的值。太好了。
但是如何将“删除”按钮调用到 Flask 中以便给它一个功能?
换句话说。当用户单击“添加/更新按钮”时,字段输入应添加到我的数据库中。当用户单击“删除”按钮时,应从我的数据库中删除字段输入。
如何在 Flask 中获取点击了哪个按钮?
我在这里找到了解决方案:https://predictivehacks.com/?all-tips=how-to-add-action-buttons-in-flask
答案是:
if request.form.get('action1') == 'VALUE1':
例子是:
from flask import Flask, render_template, request
app = Flask(__name__)
@app.route("/", methods=['GET', 'POST'])
def index():
if request.method == 'POST':
if request.form.get('action1') == 'VALUE1':
pass # do something
elif request.form.get('action2') == 'VALUE2':
pass # do something else
else:
pass # unknown
elif request.method == 'GET':
return render_template('index.html', form=form)
return render_template("index.html")
<h3>Our Flask Buttons<h3/>
<form method="post" action="/">
<input type="submit" value="VALUE1" name="action1"/>
<input type="submit" value="VALUE2" name="action2" />
</form>
【问题讨论】:
标签: python html python-3.x flask