背景
项目中发现用jquery发的ajax请求在IE中总是被缓存,tab切换修改都未生效,必须重新刷新页面才行。
解决办法:
- 修改ajax请求,去缓存;
- 将get请求改为post;
- 修改request-header,set cache-control =false
其他
对于方法1,有一些思路,
可以在每次请求时加时间戳
$.ajax({time:new Date().getTime()})
也可以申明ajax全局变量,指定所有的请求都不缓存
$(function(){ $.ajaxSetup({cache:false;}); });
每次在调用ajax请求时,如果有需要关掉缓存的,再设置cache=false
$.ajax({cache:false});