从动态表单渲染新模板的Flask

2024-06-16 11:58:23 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试使用materialdesignlite创建一个flask应用程序,用户可以从表单向列表中添加一堆芯片,提交表单,然后使用列表中的项目呈现一个新模板。然而,当我点击提交按钮并将其发送到服务器时,我很难弄清楚如何提交芯片的值。在

下面是一个简单的Hello Names示例:

烧瓶应用程序

from flask import Flask, render_template, request, jsonify

app = Flask(__name__)


@app.route('/')
def index():
    return render_template('hello.html')

@app.route('/names', methods=['POST','GET'])
def say_hello():
    names = request.json
    return render_template('names.html', names)

if __name__ == "__main__":
    app.run()

你好.html

^{pr2}$

芯片jQuery

<script>
   $(document).ready(function(){
      $("#name-add").click(function(){
        var name = $('#name').val();
        if (name != '') {
          var names_chip = '<li id="name-chips" style="list-style:none;">' +
                                '<span class="mdl-chip mdl-chip--deletable">' +
                                    '<span class="mdl-chip__text" style="font-size:16px;">' + name + '</span>' +
                                    '<button type="button" class="mdl-chip__action"><i class="material-icons">cancel</i></button>' +
                                '</span>' +
                              '</li>';
          $("#name-list").append(names_chip);
          $('#name').val('');
        }
      });
   });

   $(document).on('click','.mdl-chip__action',function(){
        $(this).parent().remove();
     });
  </script>

我一直在研究ajax,但甚至无法设置它,如果我单击submit按钮,它会呈现'名称.html'通过调用'/names'URL。在


Tags: nameappflasknamesstylehtmlfunctionbutton