2011-09-01 60 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全局設置。如果您使用的$就