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

Javascript
XmlUtils JS操作XML工具类
jQuery animate效果演示
Jquery 设置标题的自动翻转
JQuery与Ajax常用代码实现对比
学习JS面向对象成果 借国庆发布个最新作品与大家交流
CSS 布局一个漂亮的滑块
兼容多浏览器的JS 浮动广告[推荐]
学习ExtJS(一) 之基础前提
学习ExtJS Column布局
jquery 最简单的属性菜单
有效的捕获JavaScript焦点的方法小结
js css样式操作代码(批量操作)
JS模拟的QQ面板上的多级可展开的菜单
jquery 框架使用教程 AJAX篇
css 有弹动效果的网页导航
jQuery语法总结和注意事项
用AJAX技术做Google Suggest效果
Javascript文档对象模型(DOM)实例分析
Javascript制作拖动网页布局的方法
Javascript解决IE6和FF的PNG图片兼容性问题

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-28   浏览: 160 ::
收藏到网摘: 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);

  第二种方法感觉挺好。