简体   繁体   English

如何发送数据<div>从 html 到烧瓶

[英]how to send data in <div> from html to flask

I have a div element with data.我有一个带有数据的 div 元素。 I want to pass the div to flask.我想将 div 传递给烧瓶。 I know I can use request.form to get the form information on the backend.我知道我可以使用 request.form 来获取后端的表单信息。 But I am not sure how to get the elements from the div that are not apart of the form.但我不确定如何从 div 中获取不属于表单的元素。

Here is my div and I'm have data with(item1, item2...)
           
    <div id="rightdiv">
       item1,item2,item3,item4
       <form action="{{ (url_for('get_div_info') }}">
          <input type="submit" value="Submit">
       </form>
    </div>
         

I'm trying to use ajax to perform a HTTP request on flask backend.我正在尝试使用 ajax 在 Flask 后端执行 HTTP 请求。

    <script>
       let yourdiv = $("#rightdiv").html();
       $.ajax({
           type: 'post',
           url: '/divinfo',
           data: JSON.stringify(yourdiv),
           contentType: "application/json; charset=utf-8",
           success: function (data) {
               console.log(data);
           }
       });
    </script>
    
     
                 

Here is my flask route.这是我的烧瓶路线。 I'm trying get the data from html to here我正在尝试将数据从 html 获取到这里

       @app.route('/get_divinfo', methods=['POST'])
       def get_divinfo():
           divinfo = flask.request.get_json()
           print(divinfo)
       return 'test'
    

I'm not getting any data in the back end routes.我没有在后端路由中获得任何数据。

HTML HTML

<div>
   <span id="rightdiv">item1,item2,item3,item4</span>
       <input type="submit" value="Submit" id="submit_btn">
</div>

JS JS

<script>
       $("#submit_btn").click(function(e) {
                yourdiv = $("#rightdiv").html();
                $.ajax({
                        type: 'POST',
                        url: '/divinfo',
                        data: {'yourdiv': yourdiv},
                        success: function() {
                            alert('Successful!')
                        },
                        error: function() {
                            alert("Oops! Something went wrong.");
                        }
                });
            })  
      </script>

Blockquote块引用

@app.route('/divinfo', methods=['POST'])
    def get_divinfo():
        divinfo = request.form['yourdiv']
        print(divinfo)
    return ('', 200)

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM