IE9上的.net mvc和jquery $ .ajax

y62*_*ang 6 .net ajax jquery internet-explorer-9 asp.net-mvc-3

我有一个控制器的ajax调用,它应该向我发送更新的视图,以便我可以使用更新的数据更新我的页面.但我得到304:Not Modified标题.

我尝试使用no-cache选项进行ajax调用,并尝试手动将时间戳添加到请求URL的末尾,其中没有一个在IE9上工作.

这在chrome上完美运行,无需设置缓存选项.

我不太确定问题出在哪里.

以下是我使用的代码,我认为在手动添加时间戳后工作.QA表示它在她的电脑上不起作用.

     $.ajax({
         url: form[0].action + "?cc="+new Date().getTime(),
         type: 'POST',
         cache: false,
         data: $(form).serialize()
     })
    .success(createFilterCleanup);
Run Code Online (Sandbox Code Playgroud)

Nic*_*ckz 4

尝试在 JQuery $.ajax 中设置以下内容,以防止 IE 缓存您的 ajax 请求。这一直对我有用。

$.ajaxSetup({ cache: false });
Run Code Online (Sandbox Code Playgroud)

或者

$.ajax({ type: 'POST', cache: false }); 
Run Code Online (Sandbox Code Playgroud)

http://api.jquery.com/jQuery.ajax/

“如果设置为 false,它将强制浏览器不缓存所请求的页面。将缓存设置为 false 还会将查询字符串参数“_=[TIMESTAMP]”附加到 URL。”

下面是一篇文章,其中包含一些其他可能的解决方案:http://www.dashbay.com/2011/05/internet-explorer-caches-ajax/

希望这有帮助。