坑爹的IE缓存

做一个项目用到Ajax,刚开始没仔细发现,后来发现提交同一个 url (如url.php?do=new) 时候 XXXXX.send(url), 返回结果都是一样的,而我 url.php 获取的是最新的数据,在FF和Chorme浏览器都正常,返回最新数据!这才知道是IE缓存的问题。(真是麻烦,没办法,现在用IE还是占大多数,就改吧)

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

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

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

  2:在XMLHttpRequest发送请求[b]之前[/b]加上XMLHttpRequest.setRequestHeader(“If- Modified-Since”,”0″)

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

XMLHttpRequest.send(YYYYYY);

  那么,就把它变成
XXXXX.setRequestHeader(“If-Modified-Since”,”0″);
XXXXX.send(YYYYYY);
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值