2013-07-31 329 views
0

有沒有辦法通過jquery/javascript修改jquery UI中的選項卡鏈接?JQuery UI選項卡,更改選項卡URL(JQuery 1.10+)

樣的問題是像

一個標籤具有URL "http://thanksforyourhelp/greatly/appreciated/"

如果形式是標籤上提交,數據被寫入到數據庫中。該響應給出了添加到數據庫的行的ID。

特定標籤訪問該鏈接實際上應該是

'http://thanksforyourhelp/greatly/appreciated/ID' 

其中ID是因爲現在從表單(AJAX這裏也一樣)的反應稱爲下一次發回。當這個迴應來了,我必須重新加載當前標籤與URL中的ID。

之前的JQuery 1.10。我們可以這樣做

$("#tabs").tabs("url", index, url); 

我們如何在JQuery UI 1.10+中做到這一點。由於URL方法在JQuery 1.10中被移除?

回答

5

在完整的表單提交中做這樣的事情。這將更改當前活動選項卡的URL並重新加載選項卡。

var tabs = $("#tabs"); 
var currentTabIndex = tabs.tabs("option", "active"); 
var tab = $(tabs.data('uiTabs').tabs[currentTabIndex]); 
tab.find('.ui-tabs-anchor').attr('href', "http://thanksforyourhelp/greatly/appreciated/ID"); 
// If cached initially. Remove cache then 
tab.data("loaded", false); 
tabs.tabs("load", currentTabIndex); 
+0

這比直接使用1.10 url方法要少得多。感謝分享。 – Chris

1

選項卡定義爲我觸發了錯誤;不得不像這樣改寫它:

var tab = $(tabs.data()['ui-tabs'].tabs[currentTabIndex]);