使用location.href或window.location.reload重新加载页面(true)

时间:2016-12-07 14:45:12

标签: javascript reload window.location location-href

我需要在ajax调用成功时重新加载页面。

我看到了一些代码(不是我的代码),有两种方式:

success : function(obj) {
//code
        location.href = location.href;
    }

success : function(obj) {
//code
        window.location.reload(true);
    }

行为有什么不同吗?我知道位置和window.location的区别,但在工作方面呢?

1 个答案:

答案 0 :(得分:13)

主要区别如下:

  

window.location.reload()使用POST数据重新加载当前页面,而window.location.href ='您的网址'不包含POST数据。

此外,window.location.reload(true)方法从服务器重新加载页面。浏览器将跳过缓存。

例如,我发现您正在使用success请求中的AJAX函数。

假设您有以下方法:

[OutputCache(Duration=600)]
public ActionResult Homepage(){
   //code here
   return View();
}

如果您使用window.location.href="location_URL",则浏览器缓存数据600秒,即10分钟。

另一方面,如果您使用window.location.reload(true),则浏览器将跳过缓存,然后从服务器重新加载页面。