2011-09-01 61 views
0

好吧,这里有一个很好的益智游戏给你们。 我正在从PHP Web服务中获取JSON并将结果显示到div中。结果似乎没有显示或会导致您认为Web服务不输出任何数据或ajax调用错误。进一步的调查显示,Web服务IS输出数据并且Ajax调用是正确的,并将适当的变量发送到服务。IE 7/8 AJAX缓存奇怪

这里就是它有趣的......

如果我按F12键,打开控制台,刷新页面,然后单击发起Ajax调用..等待它的链接...它的作品!

任何人都知道为什么发生这种情况或更好,如何使IE7/8 STOP缓存AJAX?

哇,我真的很讨厌IE!

我的代码:

function getActivity(aid, callback) { 
var date = new Date(); 
var timestamp = date.getTime(); 

var params = { 
    apiKey: apiDefaults.key, 
    service: 'wb_getActivity', 
    agencyID: $('#booking-agencyID').val(), 
    activityID: aid, 
    nocache: timestamp 
}; 

$.ajax({ 
    cache: false, 
    url: apiDefaults.url, 
    data: params, 
    dataType: 'json', 
    type: 'post', 
    success: function (json) { console.log(json); callback(json); } 
});} 
+0

的$不用彷徨或$。员额扩展你尝试在调用的参数设置''cache'to还FALSE'

$.ajaxSetup({ cache: false }); 

这也可以帮助? – m90

+0

是的,没有运气。同样的事情(见代码)。 –

回答

1

把一个动态变量在url像当前日期时间强制浏览器不缓存请求和响应。

+0

不起作用,我试过了,我的web服务中的头文件对接加载,以及调用控制台中的函数。 –

0

答案是这样的,我有console.log()函数在没有打开调试器的情况下进入IE。

0

另一种将Cache设置为false的方法是,如果不工作则更改jQuerys全局设置。如果您使用的$就