jquery ajax禁用缓存解决ie数据不更新的问题

来源:互联网 发布:python 期货交易接口 编辑:程序博客网 时间:2024/05/18 00:09

场景:反复查询数据库数据(状态数据),在IE浏览器中会出现查询几次数据后就查询缓存,不再从数据库中获取数据,拿不到最新数据。


IE下用Ajax请求某一路径,通常会因为缓存的原因而返回上一次的结果,造成混乱,get方式时,获取数据,因发送参数和地址都一致,故IE浏览器会从缓存中取,而不会去请求服务器端,而post方式因为参数的不同,不会产生这个问题】 火狐下不会出现这种情况。

解决办法:

方法一、 AJAX请求的页面后加个随机函数,可以使用随机时间函数做参数

javascript发送的URL后加上t=Math.random()

例如这样:URL+"&"+"t="+Math.random();或者new Date();

 URL 参数后加上 "?timestamp=" + new Date().getTime();

方法二、$.ajaxSetup({cache:false})

这句话作用于左右ajax请求,写了这句话之后就不用改已经写完的多个请求了。

 

以上两种方法都可以。

阅读全文
0 0
原创粉丝点击