当前位置: 首页 > 图文教程 > 网络编程 > Javascript > AJAX初学:IE缓存页面的问题

Javascript
js一组验证函数
JavaScript 字符串连接性能优化
JavaScript CSS 菜单功能代码
jQuery 各种浏览器下获得日期区别
清除网页历史记录,屏蔽后退按钮!
关于IE7 IE8弹出窗口顶上
javascript StringBuilder类实现
通过event对象的fromElement属性解决热区设置主实体的一个bug
Javascript 布尔型分析
javascript 动态参数判空操作
js 解决“options为空或不是对象”
javascript 语法学习练习
javascript 硬盘序列号+其它硬件信息
window.location和document.location的区别分析
javascript XML数据显示为HTML一例
HTML与javascript常碰到的编码问题
javascript 时间对象的练习
JavaScript 事件参考手册
javascript prototype,executing,context,closure
javascript 网页跳转的方法

Javascript 中的 AJAX初学:IE缓存页面的问题


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-28   浏览: 214 ::
收藏到网摘: n/a

  做一个项目用到Ajax,开始觉得挺好,后来发现一个问题,例如删除一项,恢复之后就不能再接着删除,必须要等一段时间,后来知道是IE缓存的问题。

  AJAX缓存页面是一个刚接触AJAX的人一定会遇到的问题,造成这个问题的关键性人物又是IE...

  在网上找了好多资料后,总结一下

  1:在AJAX请求的页面后加个随机函数,我们可以使用随机时间函数

  在javascript发送的URL后加上t=Math.random() ,当然,不是直接把t=Math.random()拷贝到URL后面,应该像这样:URL+"&"+"t="+Math.random();

  2:在XMLHttpRequest发送请求之前加上XMLHttpRequest.setRequestHeader("If-Modified-Since","0")

  一般情况下,这里的XMLHttpRequest不会直接使用,你应该可以找到这样的代码

XXXXX.send(YYYYYY);

  那么,就把它变成

XXXXX.setRequestHeader("If-Modified-Since","0");
XXXXX.send(YYYYYY);

  第二种方法感觉挺好。