在成功调用ajax之后,我遇到了一些重定向/重新加载的问题。情况是这样的:
我将要删除的项保存在数组中。当我点击一个按钮时,它会通过ajax调用PHP文件,成功后我需要重新加载页面。但是我在做这个的时候遇到了一些问题。我在网上搜索,找不到一个可行的解决方案。
我有一个PHP文件,它通过数组从数据库中逐项删除。
foreach($arrayVals as $key=>$val)
{
//bla bla
}另外,我还有jQuery part:
$("#button").live("click",function(){
$.ajax({
url, data, type... not important
success: function(html){
location.reload();
}
});
});我的意思是,代码是有效的,但不是很好。它确实会删除项目,但不会删除所有项目,然后重新加载页面。例如,如果我有10个项目要删除,它会删除6-7个项目,而3-4个项目保持不删除。
它的表现就像它太快地重新加载页面,就像PHP文件没有足够的时间来处理所有事情:D
发布于 2011-10-25 04:01:37
BrixenDK是对的。
在所有ajax调用完成时执行.ajaxStop()回调。这是放置你的训练员的最好地方。
$(document).ajaxStop(function(){
window.location.reload();
});发布于 2011-10-25 03:53:26
当ajax完成时,您可以使用ajaxStop执行代码:
$(document).ajaxStop(function(){
setTimeout("window.location = 'otherpage.html'",100);
});发布于 2016-10-23 17:48:26
使用此Reload page
success: function(data){
if(data.success == true){ // if true (1)
setTimeout(function(){// wait for 5 secs(2)
location.reload(); // then reload the page.(3)
}, 5000);
}
}https://stackoverflow.com/questions/7881089
复制相似问题