将div元素传递到烧瓶

时间:2019-12-27 04:46:06

标签: python html flask

我有一个div元素,它将部分由文本和部分表单数据组成。我想将div传递给烧瓶。我知道我可以使用request.form来获取后端的表单信息。但是我不确定如何从div中获取不属于表单的元素。

<div id="schedule">
  <form action="generate" class="grid-container" enctype="multipart/form-data">
  {% for bunk in bunks %}
    {% set outer_loop = loop %}
    <div class="grid-item"> {{bunk.name}} </div>
      {% for _ in range(0, 7) %}
        {% if _ < 3 %}
           <input type="text" class="grid-item {{outer_loop.index-1}}{{_}}" name="{{outer_loop.index-1}} {{_}}"/>
        {% elif _ == 3 %}
           <div class="grid-item">Lunch</div>
        {% elif _ > 3 %}
          <input type="text"   class="grid-item {{outer_loop.index-1}}{{_-1}}" name=" 
          {{outer_loop.index-1}} {{_-1}}"/>
        {% endif %}
      {% endfor %}
    {% endfor %}                                                                                                                                                                                                     
  <input type="submit" name="data" value="generate"/>
  </form>

  <div class='activities'>
    {% for activity in activities %}                                                                                                                                                                                    
    <div id="{{activity.name}}" draggable="true" ondragstart=drag(event)> {{ activity.name }} </div>
    {% endfor %}                                                                                                                                                                                                 
  <div>                                                                                                                                                                                                        </div>

1 个答案:

答案 0 :(得分:1)

为您的div设置唯一的ID。将jqueryajax或任何可以对您的javascript后端执行HTTP请求的flask代码一起使用。

在字体结尾: example.html

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

在您的烧瓶代码中: controller.py

@app.route('/divinfo', methods=['POST'])
def get_divinfo():
   divinfo = flask.request.get_json()
   print(divinfo)
   return flask.jsonify({"result":f'ok'})