我使用 jQuery $.post() 将数据从表单发送到烧瓶函数。该函数对数据进行一些长时间运行的计算。在这种情况下,我不想发回一些 HTML,而是渲染一个新模板。当我使用 jQuery/AJAX 调用函数时,我该怎么做?
表格:
<form id='myform'>
<input type='text'> some input...
<input type='button' value='send form' id='mybutton'>
</form>
表单输入的计算需要一些时间,所以我用 jQuery 发送它:
$.("#mybutton").click(function() {
// get the data in form
$exampledata = 'foo'
$.post("/some/flask/function", {'data': $exampledata}, function(response) {
can I render a new template here with data from flask function?
});
});
在flask中,对应的函数是这样的:
@app.route('/some/flask/function', methods=['POST'])
def longCalculation():
form = request.form
data = form['data']
result = runTheLongCalculation(data)
this does not work -->
return render_template('result.html',r=result)
how can I render a new template after an jQuery/AJAX call?
我不想发回重定向 URL 和 JSON,但实际上呈现了一个模板。