可以在b页面载入的时候加入刷新 *** 作,window.location.reload()或者history.go(0);
返回上一页是history.go(-1);
一般页面会自动刷新的,所以上面的window.location.href=''就可以解决。
我是在使用iframe是遇到这个问题的,登录按钮引用的是另一个header.html的文件,点击退出登录后,发现只有这个引用header.html的iframe的页面刷新到登录界面,其他的部分还停留在原来的界面。
解决方法
在点击退出跳转的链接增加一个target属性,并设置值为"_top"。target="_top"
_top
这个目标使得文档载入包含这个超链接的窗口,用 _top 目标将会清除所有被包含的框架并将文档载入整个浏览器窗口。
例如:
最后验证是可以的。
代码如下:
window.onload=function(){
alert("onload")
}
1,reload 方法,该方法强迫浏览器刷新当前页面。
语法:location.reload([bForceGet])
参数: bForceGet, 可选参数, 默认为 false,从客户端缓存里取当前页。true, 则以 GET 方式,从服务端取最新的页面, 相当于客户端点击 F5("刷新")
2,replace 方法,该方法通过指定URL替换当前缓存在历史里(客户端)的项目,因此当使用replace方法之后,你不能通过“前进”和“后退”来访问已经被替换的URL。
语法: location.replace(URL)
通常使用: location.reload() 或者是 history.go(0) 来做。
此方法类似客户端点F5刷新页面,所以页面method="post"时,会出现"网页过期"的提示。
因为Session的安全保护机制。
当调用 location.reload() 方法时, aspx页面此时在服务端内存里已经存在, 因此必定是 IsPostback 的。
如果有这种应用: 需要重新加载该页面,也就是说期望页面能够在服务端重新被创建,期望是 Not IsPostback 的。
这里,location.replace() 就可以完成此任务。被replace的页面每次都在服务端重新生成。
代码: location.replace(location.href)
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)