Ale*_*ley 8 python ajax jquery flask
我的目标是让用户填写表单,在POST请求中将该信息发送到烧瓶服务器,然后使用该表单信息呈现模板(在服务器上经历一些逻辑之后).
到目前为止,我已经完成了所有这些的POST部分.我正试图在里面渲染一个模板if request.method == POST'
,我想现在还不行.
这是我到目前为止的代码:
@app.route('/filteredsearch/', methods = ["GET", "POST"])
def filteredsearch():
if request.method == 'POST':
data = json.loads(request.data)
tables = data['checkboxes']
filter_results = getFilteredEntities(tables = tables)
print filter_results #This works
return render_template("filteredsearch.html", entities = filter_results)
Run Code Online (Sandbox Code Playgroud)
我是否必须单独GET
请求我的POST
功能是否成功?如果是这样,我该怎么做?
这是AJAX请求(如果重要的话,可以在应用程序的每个页面上调用此代码):
$.ajax({
url:"/filteredsearch/",
type: 'POST',
data: json,
contentType: 'application/json;charset=UTF-8',
success: function() {
alert("Done");
}
});
Run Code Online (Sandbox Code Playgroud)
因此,理想情况下,我可以在发布时呈现模板.如果不是这样,我该如何GET
从同一个ajax函数执行请求?
我知道通常你url_for()
用于GET
请求,这是一个选项,因为我现在在JS?
通常,您使用ajax请求返回数据,然后将其动态显示在页面中。
$.ajax({
url:"/filteredsearch/",
type: 'POST',
data: json,
contentType: 'application/json;charset=UTF-8',
success: function(evt) {
$("#results").html = evt.data;
}
});
Run Code Online (Sandbox Code Playgroud)
如果要重定向到另一个模板,那么为什么不点击在进行POST的表单上单击Submit,然后使用新模板进行响应。如果您实际上想在ajax请求返回后重定向到整个新页面(这将比仅显示您已经收到的信息要慢),则可以更改window.location。诸如此类的行为window.location = 'http://www.example.com'
会将用户带到example.com。
归档时间: |
|
查看次数: |
7038 次 |
最近记录: |