1
我已經爲我的網站創建了一個選項卡式佈局。點擊每個標籤可以進入另一個頁面。每當用戶在標籤之間切換時,我想避免一次新的HTTP發佈。我怎樣才能做到這一點?解決方案必須是基於JS的解決方案。如何在Ajax中緩存響應以避免http調用
我已經爲我的網站創建了一個選項卡式佈局。點擊每個標籤可以進入另一個頁面。每當用戶在標籤之間切換時,我想避免一次新的HTTP發佈。我怎樣才能做到這一點?解決方案必須是基於JS的解決方案。如何在Ajax中緩存響應以避免http調用
1. Create div for each tab.
2. load your ajax responce on respective div by using :
$(<respectivedivselector>).load(<url>,<data>,<calbackfunction>(){});
這樣你的Ajax性反應便會自動DIV緩存..
您還可以設置AJAX全局高速緩存作爲
$.ajaxSetup ({
cache: true
});
你也可以將此屬性設置爲單獨的AJAX調用as
$.ajax({
url: "/YourURL",
cache: true,
.
.
.
success: function(data) {
$(<respectivedivselector>).html(data);
}
});
您可以使用beforeLoad事件來阻止選項卡加載已經加載的內容。
$("#tabs").tabs({
beforeLoad: function(event, ui) {
//If contents are already loaded
if(ui.panel.contents().length > 0){
return false; //Prevent tab from loading
}
}
});
在選項卡上設置一個標誌,指示數據已被加載。在發出每個請求之前檢查標記狀態。 – 2015-02-10 12:48:45