Flask重定向(urlfor())不会重新加载页面
这个问题在这里已经有了答案:
AJAX无法处理重定向响应,afaik。 但是,您可以将<span id="message">
{{message}}
封装在<span id="message">
,标识元素,并在AJAX完成成功时执行jQuery .html()
插入自定义文本。
$.ajax({
type: "POST",
contentType: "application/json; charset=utf-8",
url: "/second_route",
data: JSON.stringify({}),
success: [],
dataType: "json"
}).done(function(){
$('#message').html('test');
window.location.href = '/';
}).fail(function(response){
$('#message').html(response['responseText']);
});
为了重定向,你需要用window.location.href = "/someURL"
替换done
子句中的代码,但由于端点是相同的,所以这不是必需的。 这样,根本不需要使用message
变量。
这就是我最终为那些阅读问题的人解决问题的方法。
将我的发布请求更改为发布到相同的路由,然后使用此调用加载页面:
var posting = $.post(window.location.href, {'some key': 'some value'});
posting.done(function( ) {
window.location.replace(window.location.href);
});
链接地址: http://www.djcxy.com/p/12467.html