簡體   English   中英

從 html 輸入獲取數據到 python 變量?

[英]Get data to a python variable from a html input?

我是 python 的新手。 我需要從 html 輸入獲取數據到 python 變量。 但我找不到辦法做到這一點。 對於 output,它將 output 顯示為無、無、無。 它也不會打印出數據。 我該如何解決這個問題? 這是 html 文件中的代碼。

    <script src="//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
    <script type=text/javascript>
            $(function() {
              $('button#add-income').bind('click', function() {
                $.getJSON('/add_income',
                    function(data) {
                  //do nothing
                });
                return false;
              });
            });
    </script>

    <form class="add-income-box" method="POST" action="">
        <div class="add-income-expences-top-div">
            <label>INCOME</label>
        </div>
        <div class="add-income-expences-label-div">
            <label class="add-income-expences-date-lbl">Date : </label>
            <label class="add-income-expences-details-lbl">Details : </label>
            <label class="add-income-expences-amount-lbl">Amount : </label>
        </div>
        <div class="add-income-expences-input-div" id="div1">
            <input class="add-income-expences-date-input" name="i_date" value="{{request.form.i_date}}">
            <input class="add-income-expences-details-input" name="i_details" value="{{request.form.i_details}}">
            <input class="add-income-expences-amount-input" name="i_amount" value="{{request.form.i_amount}}">
        </div>
        <button class="add-income-expences-bottom" id="add-income">ADD</button>
    </form>

這是 python 文件中的代碼

    @app.route('/add_income', methods=["GET", "POST"])
    def add_income():
        i_date = request.form.get('i_date')
        i_details = request.form.get('i_details')
        i_amount = request.form.get('i_amount')
        print(i_date)
        print(i_details)
        print(i_amount)
        return "nothing"

output:-

None
None
None
127.0.0.1 - - [31/May/2020 16:56:07] "GET /add_income HTTP/1.1" 200 -

更改此表單標記action attribute

<form class="add-income-box" method="POST" action="{{ url_for('update_project')}}">

這樣,當您單擊按鈕時,它將調用 action 屬性中指定的方法。

如果您想使用 AJAX 調用此 API 則使用 JSON 發送數據。 如果您想使用表單發送數據,請刪除 Ajax 代碼並按照上述建議更改代碼,然后單擊按鈕,您將無法獲得表單數據。

暫無
暫無

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

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