[筆記]jQuery UI的tabs組件在IE瀏覽器中的緩存問題~

jQuery中禁用緩存

最近在使用jQuery ui中的tabs插件時,遇到一個問題。

在非IE瀏覽器下,標籤是自動刷新的。就是在不一樣的標籤間切換,不用刷新整個頁面,若是某個標籤內容有更新,好比顯示時間,那麼切換到別的標籤,再切換回來,時間是最自動更新的。

可是在IE中,不管怎麼修改標籤內的代碼,內容都不會自動刷新,並且,按F5設置是Ctrl+F5,內容都不會自動更新!

後來,在國外論壇中找到了一種方法,就是禁用jQuery的緩存:

    $.ajaxSetup({cache:false})

其實,cache:false我以前也有想到,可是把它放到tabs()裏面了,因此居然無效。

看來仍是對jQuery框架了解的不是太深入哈。

不過這也暴露了使用框架的一個弊端:不太自由。若是須要使用些高級的功能,就至關麻煩。

固然,若是隻是在UI上,jQuery是很是棒的。可是若是處理數據,它就顯得有點兒力不從心了。

貌似在數據處理上EXT比較強大些。

[摘自:http://shenfei.me/jquery-to-disable-caching.html]html

---------------------------------------------------------
呵呵,我最近也碰到這個問題了,我用的是jQuery 1.4.4和jQuery UI 1.8.8,在IE六、七、8版本中都有這個問題,非IE瀏覽器中沒有任何問題,一開始我覺得是jQuery UI 1.8.8版本的問題,當我升級到jQuery UI 1.8.14後問題依舊。崩潰ing,因而google,還好發現博主你這篇文章,而後我試着在ajaxOptions中加入cache:false,然 後再測試IE六、七、8,問題修復了!!!

jQuery(document).ready(function() {
$("#tabs").tabs({
ajaxOptions: {
cache:false, // 加上此句代碼,解決IE瀏覽器下因爲緩存的緣由致使tab頁面內容不刷新問題!
error: function(xhr, status, index, anchor) {
$(anchor.hash).html("暫無報表選項卡內容,請新建本部門首頁報表內容!」);
}
}
});
});

感謝上面那篇文章博主!~終於解決了這個讓我差點吐血的問題!~jquery

PS:按照上面那篇文章的修改方法是這樣的:將$.ajaxSetup({cache:false}); 放到頁面$(document).ready()裏!ajax

相關文章
相關標籤/搜索