2011-12-19 100 views
0

我试图让使用JQuery的Ajax调用如下文件:Jquery.Ajax + IE9:第二个请求失败

$.ajax({ 
     cache: false, 
     url: "../_filters.txt", 
     success: function (data) { 
      filters = data; 
     } 

使用IE9,第一个请求作品和返回数据。使用Fiddler,时间戳被添加到请求中。

但是,第二个请求不起作用。同样,根据Fiddler,请求有不同的时间戳并返回了状态码200,但没有返回数据。

这就好像IE仍然在某处缓存文件?我搜索了四周,似乎使用cache: false应该修复IE Ajax缓存问题?

回答

0

想通了,原来这是由于没有正确格式化,因此IE跳过它的文件。

+1

祝贺解决方案!如果可以,请确保将您的答案标记为“已接受”,以便其他人可以从您的成功中学习。干杯〜 – 2011-12-22 01:37:54

0

你能尝试添加数据类型:

 
$.ajax({ 
     cache: false, 
     dataType: 'text', // or xml 
     url: "../_filters.txt", 
     success: function (data) { 
      filters = data; 
     } 
//you could wrap your success code in if(xhr.status == 200) { .. to check whats getting in 

希望它为你工作

+0

谢谢 - 仍然无法正常工作。 – 2011-12-19 01:22:01

+0

您是否尝试在成功函数中添加xhr.status,并且改变了某些... – 2011-12-19 01:25:01

+0

是的,该staus是200. – 2011-12-19 01:34:33