IE浏览器中ajax使用缓存数据的问题
来源:互联网 发布:免费高中课程视频软件 编辑:程序博客网 时间:2024/05/19 22:04
今天做了一个小功能:点击鼠标实时更新系统时间,采用ajax,过程很顺利,没遇到啥差错,谷歌,火狐,欧鹏一律通过,怀着忐忑的心情点开了IE8,果然,IE要对得起前端杀手的称号:更新不了时间。
查了一下这才发现IE一直存在这个问题,内部原因是:当第一次请求数据时能顺利返回,第二次以后IE会默认使用上次的缓存数据,这就造成了每次发送请求后返回的数据没有更新的原因。
解决方法:
1.最直接有效的就是在请求页后面加上随机函数,随机函数可以是Math.random(),也可以是new Date().getTime();这样URL每次都是新的。
之前代码:XHR.open('get', 'demo.php', false);
改进代码:XHR.open('get', 'demo.php?rand='+new Date().getTime(), false); //用new Date().getTime();
或:xhr.open('get', 'demo.php?rand='+Math.random(), false); //用Math.random();
2.在发送请求send();前加一行代码:(XHR对象).setRequestHeader("If-Modified-Since","0");
3.据说改用post提交方式也能解决这个问题,但我试了一下发现不行,不知为何。还有在header上设置禁止缓存等方法。时间仓促,这些方法日后详细查询。
0 0
- IE浏览器中ajax使用缓存数据的问题
- ajax在IE浏览器中请求的数据不正确,缓存问题
- Ajax中IE浏览器中的缓存问题
- IE浏览器使用ajax时严重的缓存问题。
- 解决IE浏览器中解决IE浏览中AJAX只能运一次的IE缓存问题
- 解决IE浏览器中解决IE浏览中AJAX只能运一次的IE缓存问题
- IE浏览器缓存Ajax请求之后不更新数据问题
- 解决Ajax在IE浏览器中缓存问题
- IE浏览器下AJAX缓存问题导致数据不更新的解决办法
- Ajax 在IE浏览器中的缓存问题
- 在ie中关于ajax请求获得数据缓存问题的解决办法
- Jquery AJAX 请求IE缓存,数据不更新的问题
- 解决ajax调用中ie的缓存问题
- jquery 请求ie缓存,数据不更新的问题【ajax禁用缓存解决ie数据不更新的问题】
- jquery 请求ie缓存,数据不更新的问题【ajax禁用缓存解决ie数据不更新的问题】
- jquery 请求ie缓存,数据不更新的问题【ajax禁用缓存解决ie数据不更新的问题】
- jquery 请求ie缓存,数据不更新的问题【ajax禁用缓存解决ie数据不更新的问题】
- ie下使用ajax缓存问题
- ios手势识别(双击、捏、旋转、拖动、划动、长按, 上下左右滑动)
- cocos2d-js入门自备学习资料
- chaussure tn pas cher moving people is the same ah
- 2014年10月腾讯面试经历---重庆站
- onBlur事件 输入小写转大写
- IE浏览器中ajax使用缓存数据的问题
- 聊聊高并发(十五)实现一个简单的读-写锁(共享-排他锁)
- phonegap添加二维码扫描插件集成ZXing扫描组件(Android版)
- 【Git学习笔记】重要概念:工作区和暂存区
- Intent中的四个重要属性——Action、Data、Category、Extras
- NSLog的输出格式
- 【富士通GUI】N-ORCA画面部结构
- iOS strong 和weak
- Drawable和Bitmap的区别