jQuery$.get甚至没有在Internet Explorer中启动请求,而I';I’我想知道为什么

jQuery$.get甚至没有在Internet Explorer中启动请求,而I';I’我想知道为什么,jquery,internet-explorer,Jquery,Internet Explorer,这不是缓存问题,代码在所有其他浏览器中都可以正常工作 我有一个简单的$.get请求,通过单击按钮触发。当Fiddler打开以监视Internet Explorer 9 HTTP流量时,我可以单击该按钮,在我的计算机上看到www.mydatasource.com的HTTP流量为零。我从来没见过 你知道我为什么没看到这个请求吗?谢谢 $('#mybutton').click(function () { $.get('http://www.mydatasource.com/', functio

这不是缓存问题,代码在所有其他浏览器中都可以正常工作

我有一个简单的$.get请求,通过单击按钮触发。当Fiddler打开以监视Internet Explorer 9 HTTP流量时,我可以单击该按钮,在我的计算机上看到www.mydatasource.com的HTTP流量为零。我从来没见过

你知道我为什么没看到这个请求吗?谢谢

$('#mybutton').click(function () {
    $.get('http://www.mydatasource.com/', function(data){});
}
--------更新-------------

还尝试了一种更原始的方法(在Internet Explorer 9中也不起作用):


在这个场景中,您可能会认为会看到请求在Fiddler上发出,但同样,完全沉默我认为这可能是一个跨域问题,但已将所有内容(网页、脚本和“获取”url)放在同一个域中,并且仍然无法从Internet Explorer 8获得流量。欢迎任何建议。

这是因为IE正在缓存请求。在url末尾添加当前日期戳。在这种情况下,每个请求将发送到唯一的url:

$('#mybutton').click(function () {
    $.get('http://www.mydatasource.com/?' + new Date().getTime(), function(data){});
}

这是因为Internet Explorer缓存了请求,因此请求仅在第一次触发

你可以用它来避免这种情况

jQuery.ajaxSetup({cache: false});

$('#mybutton').click(function () {
    $.get('http://www.mydatasource.com/', function(data){});
});
通过这种方式,等于当前时间戳的变量被发送到服务器,浏览器不会缓存调用,因为参数已更改

你也可以这样做

var noCache = new Date().getTime();
$.get('http://www.mydatasource.com/',{nocache: noCache},  function(data){});

我可能错了,但是你确定你的代码用in.ready函数包装了吗

jQuery(document).ready(function($){

})

您使用的是什么版本的Internet Explorer?@maxenglander Internet Explorer 9在Windows上。ThanksHow你知道这不是缓存问题吗?我怀疑这不是缓存问题,因为我从未见过请求发出。如果是缓存问题,我可以重置浏览器,重新启动计算机,至少第一次看到请求发出。事实上,我从来没有能够从IE中获得任何$.get请求(我一直通过Fiddler监控HTTP流量-所以可能它不知何故丢失了流量,但我认为它会收集所有信息)。谢谢你好,尼古拉-谢谢你的帮助。我认为这不是缓存问题。我从来没有看到这个请求被发出,从来没有,从来没有,从来没有。甚至不是第一次。嗨,萨米奇-谢谢你的帮助。我认为这不是缓存问题。我从来没有看到这个请求被发出,从来没有,从来没有,从来没有。甚至不是第一次。也许在你的情况下还有另一个问题,但我在每一个使用它的项目中都会遇到。谢谢Bouchaala-我正在这样做。为了简单起见,我把它省略了。好吧,有时候人们会忘记它;)您是否尝试了.live('click',function(){})?
jQuery(document).ready(function($){

})