我目前每2秒使用jQuery执行相同的ajax请求。出于某种原因,在IE8上它只能在第一次工作。每个后续请求自动似乎都转到onSuccess函数,结果与第一个请求相同。
相同的代码在FF3和Chrome上完成。
有人知道这个bug以及如何破解它吗? 或者我只是做错了什么?
答案 0 :(得分:12)
IE有一个缓存功能......它可能刚刚缓存了您的请求。确保在查询字符串中添加类似随机数的内容,如下所示:
var url = "/yoururl.html";
url = url + "&random=" + Math.random();
答案 1 :(得分:6)
您知道$.ajax
具有cache
属性,当设置为false时,Jason正在执行的操作,即包含一个随机参数,表示没有请求被缓存。它比自己做的更优雅
答案 2 :(得分:0)
我刚遇到同样的事情,并通过将ajax函数调用的“cache”属性设置为false来修复它。
$.ajax({
url: "/ws/inventory/checkavailability/",
async: false,
dataType: 'json',
cache:false,
success: function (data) {
//so something interesting
}, error: function (error) {
//display error?
}
});