0

通过 ajax 更新数据库后,我需要重新加载页面。在我的 ajax post 方法中,我有如下内容:

success: function (data) {
    ....(some code doesn't matter)
    document.location.reload();
    ....(some other code I wish to execute after document is reloaded)

}

但是,之后的代码reload()将首先执行,然后页面将重新加载。我究竟做错了什么?

4

2 回答 2

1

不要重新加载,而是重定向页面并在最后添加一个变量

window.location.replace("http://example.com/yourpage.php?extravariable");

然后,您可以添加一些代码来检查 GET 并在设置了 get 值时运行 javascript 代码。

于 2013-02-25T20:05:03.840 回答
1

当页面重新加载时,代码在document.location.reload();页面的旧实例上执行,而不是重新加载的。

您需要向当前位置添加一个参数,并在测试 document.location 上的参数的漏洞上执行 onDocumentReady 以添加您想要的代码。前任:

document.location = document.location.href + "?afterReload=true";


$(document).ready(function() {
  if ( window.location.search.substring(1) != '' ){
     //do something
  }
});
于 2013-02-25T20:06:54.470 回答