Ajax缓存原理
Ajax在发送的数据成功后,会把请求的URL和返回的响应结果保存在缓存内,当下一次调用Ajax发送相同的请求时,它会直接从缓存中把数据取出来,浏览器不会与服务器交互,提高页面的响应速度和用户体验。
ie浏览器默认开启ajax缓存,其他浏览器就不会,就是说当我们的ajax请求相同时浏览器会拿之前缓存的数据,请求不会发送到后台,如果后台的数据已经更新而我们拿到的还是旧数据,这样肯定是不行的。
解决方法
1、给url后面添加一个随机参数
new Date().getTime()是获取1970年1月1日截止到现在时刻的时间的毫秒数,所以可以使浏 览器每次调用的url都不同。
"&time="+ new Date().getTime();
2.使用jQuery里面关闭ajax使用缓存的方法
$.ajaxSetup({cache: false}); //关闭ajax缓存