首页 > 代码库 > IE9 下的ajax缓存问题的处理
IE9 下的ajax缓存问题的处理
使用jQuery的getJSON从后台定时获取数据并刷新界面,使用以下方法时,在Chrome,Firefox下没问题,但在IE9下却无法刷新数据
1 2 3 4 5 | $.getJSON(webApp + "/GetShowData.do?limit=" + limit, function (data){ //****************** } |
原因是,在IE9下,进行Ajax请求时,若与之前请求相同,则不会再从浏览器获取数据,而是直接从本地获取,因此,在请求中加上时间戳,IE9便会认为是不同的请求,代码如下:
1 2 3 4 5 | $.getJSON(webApp + "/GetHccShowData.do?" + new Date().getTime() + "limit=" + Hcc.limit, function (data){ //****************** } |
此外,也可以使用以下方法:
Hcc.limit = Hcc.limit || 15;$.ajax({ type:"GET", url:webApp + "/GetHccShowData.do?" + "limit=" + Hcc.limit, cache:false, async:false, dataType:"json", success:function(data){ Hcc.ShowData =http://www.mamicode.com/ data; /**
* 处理代码
***/ data = http://www.mamicode.com/null; }});
cache:配置为false时,表示不从浏览器缓存中获取数据,调试时可以看到,发Get请求时,会自动加上时间戳
IE9 下的ajax缓存问题的处理
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。