大佬教程收集整理的这篇文章主要介绍了Jquery.get()在IE8 / 9中不起作用.不会加载未修改的缓存页面304,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
嗨,大家好,
我有一个CodeIgniter应用程序,我以ajax方式构建.我有如下功能:
$(document).on('click','.ajax_link',function(E){ //Stop the normal href action e.preventDefault(); //Grab the desTination URL var new_url = $(this).attr('href') //Grab the content via ajax and pass it to the history change function $.get(base_url+new_url,function(data){ History.pushState({ content:data.content,url:data.url },data.title,data.url); //refresh some site variables refresh(); },'json'); });
它所做的就是使用ajax_link类捕获对锚元素的点击,并将响应发送到处理该响应数据放入页面的函数.
这适用于Chrome和FF.我点击链接,jQuery发出get请求,我得到一个JSON对象,我的history.pushState()函数将一些json数据注入我的页面.
我遇到的问题是在IE8中.基本上发生的事情是当我第一次打开应用程序时,链接工作但它们只工作一次.我第二次点击链接:
> ajax GET
>收到304(未修改)的回复
>不调用jQuery.get()回调函数,因此停止死亡.
如果我清除缓存它再次工作.所以我的假设是IE正在执行get请求,但后来它发现它已经在过去请求了完全相同的文件…因此完全停止了该过程.
有人知道解决这个问题吗?我已经看过在IE中提到304错误和ajax和缓存的错误但是还没有找到与我相同的问题.
任何帮助非常感谢
(在Windows虚拟机IE8和Internet Explorer 9中的IE 8模式上测试)
解决了
只需要将以下代码添加到我的document.ready函数中,问题就消失了.
$.ajaxSetup ({Cache: falsE});
以上是大佬教程为你收集整理的Jquery.get()在IE8 / 9中不起作用.不会加载未修改的缓存页面304全部内容,希望文章能够帮你解决Jquery.get()在IE8 / 9中不起作用.不会加载未修改的缓存页面304所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。