我有一个简单的javascript函数,当单击按钮时会执行该函数,我想将一些数据从该函数发送到Flask后端。
我最初的想法是这样的:
function sendDataToBacked() {
data = "I want to send this to backend"
document.getElementById("myButton").value = data;
}
我将按钮的值设置为“数据”,然后使用这样的形式将该值发送到后端。
<form id="myForm" method="POST"></form>
<button form="myForm" id="myButton" name="button" onclick="sendDataToBacked()">Send</button>
最后,python后端将如下所示:
@app.route("/", methods=['GET', 'POST'])
def index():
if request.method == 'POST':
print(request.form['button'])
return render_template("index.html")
但这是行不通的:(你知道我怎么能用纯JavaScript实现吗?(我知道你可以用AJAX做到)
我编写了一个带有两个按钮的示例,第一个按钮本身进行提交并将数据发送到后端,第二个按钮调用一个函数并进行提交。我曾经list(request.form.keys())[0]
确定哪个按钮正在提交。
后端:
@app.route("/", methods=['GET', 'POST'])
def index():
if request.method == 'POST':
if list(request.form.keys())[0] == 'button':
print(request.form['button'])
if list(request.form.keys())[0] == 'button2':
print(request.form['button2'])
return render_template("index.html")
if __name__ == '__main__':
app.run(debug=True)
前端:
<form action="" method="post" id='myForm'>
<button name="button" value="value">Send</button>
</form>
<form action="" method="post" id='myForm2'>
<button id="myButton2" name="button2" value=0 onclick="modifyData()">Send</button>
</form>
<script>
function modifyData() {
data = "I want to send this to backend"
document.getElementById("myButton2").value = data;
}
</script>
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句