点手机浏览器后退按钮强制刷新页面

由于A界面的数据是通过ajax交互的,当你跳转到B界面,点击手机浏览器自带的后退回到A界面,由于缓存原因,读取到的数据不是最新的数据。

查了很多资料,看到网上的解决方法是清理缓存,然后页面重新向服务器发出请求。

下面整理一下,解决这个问题的方法。

方法1,HTML头部,禁止缓存:

<meta http-equiv="Expires" CONTENT="0">
<meta http-equiv="Cache-Control" CONTENT="no-cache">
<meta http-equiv="Pragma" CONTENT="no-cache">

:(手机端)此方法行不通,因为有些浏览器会忽略这个头部,测试过,可能是我手机自带浏览器的原因。

方法2,适用于jsp

Response.Buffer = True 
Response.ExpiresAbsolute = Now() - 1 
Response.Expires = 0 
Response.CacheControl = "no-cache" 

注:此方法本人没有试过,不知道可不可行

方法三,强行刷新界面

if(window.name != "bencalie"){
location.reload();
window.name = "bencalie";
}else{
window.name = "";
}

注:此方法可行,此代码写在js里。


记录菜鸟起飞的过程!

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值