簡體   English   中英

如何從 JS 向 Flask 發送確認“確定”/“取消”

[英]How to send confirm "ok" / ""cancel" from JS to Flask

我正在嘗試找到一種“收集”用戶輸入的方法,例如,如果用戶在 JS 確認 window 中按下“OK”,我想在 python 的 flask 中接收“True”,如果用戶按下“False” “取消”。

我有這部分 JS function:

<script>
    function confirmBooking(elem) {
        if(confirm('Are you sure you want to book this slot?') == true) {
            //elem = 1;
            alert("its done: " + elem);            
        }
        else { 
            return 0;
        }          
    }
</script>

現在在“形式”方面我有這個:

<form method="post"> 
     <button type="submit" name="free_button" value="free_button" onClick="confirmBooking('{{ booking_slot }}')"> Free </button> 
</form>

所以,在這里,booking_slot 是一個包含一些字符串的 python 變量。 如果用戶分別選擇“確定”或“取消”,我想要一些方法來為 Flask 端的變量設置真/假值。

有什么辦法可以做到這一點? 謝謝。

您需要創建一個 function 來收集或獲取從前端到后端的輸入。 我通常使用這種技術。

 <form action="{{url_for('/collect')}}" method="post"> <input type="hidden" id="userInput" name="userInput"> <button type="submit" name="free_button" value="free_button" onClick="confirmBooking('{{ booking_slot }}')"> Free </button> </form>

 <script> function confirmBooking(elem) { if(confirm('Are you sure you want to book this slot?') == true) { //elem = 1; alert("its done: " + elem); document.getElementById("userInput").value = "True"; } else { document.getElementById("userInput").value = "False"; return 0; } } </script>

@app.route('/collect',methods=["POST"])
def collect():
    if request.method =="POST":
        userInput = request.form.get("userInput")
    return render_template('<template here>',userInput=userInput)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM