繁体   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