2010-01-29 33 views
1

我使用jQuery UI庫中的tabs小部件使用AJAX調用填充我的標籤內容。:如何緩存AJAX響應(下次用戶選擇標籤時顯示)?

我的代碼loks這樣的:

<script type="text/javascript"> 
    $(function() { 
     $("#tabs").tabs({ 
      load: function(event, ui) { afterLoadProcessing(); } 
     }); 
    }); 
</script> 
... 
<div id="tabs"> 
<ul> 
    <li><a href="url1">tab1</a></li> 
    <li><a href="url2">tab2</a></li> 
</ul> 
</div> 

它工作正常,每次我點擊標籤時,標籤的內容是通過AJAX調用的響應填充。

我想緩存AJAX調用的響應,這樣我第二次點擊在一個標籤上,它會直接顯示最後一個響應(最終緩存)。

可能嗎? (我確定這是......)。如果是的話,最簡單的方法是什麼? (代碼片段歡迎)

回答

4

一套高速緩存爲true:

$("#tabs").tabs({ 
    load: function(event, ui) { afterLoadProcessing(); }, 
    cache : true 
}); 

reference

+0

Thx。我在文檔中以某種方式錯過了它!再次感謝你 ! – fabien7474 2010-01-29 22:49:12

+0

非常歡迎您! :)) – Reigel 2010-01-29 22:57:26

1

有您可以在標籤本身,或者使用ajaxOptions指定緩存兩個地方,在AjaxCalls的。我會嘗試在選項卡上使用cache:true來查看它是否工作正常,然後通過選項卡上的ajaxOptions選項指定ajax緩存。你可能需要兩者。