2011-08-15 27 views
1

我在我的web應用程序上設置了jQuery Tab工具,並且它在單擊這些標籤之間工作正常,但我想要做的是能夠在另一個javascript函數完成後選擇一個選項卡。閱讀文檔和搜索後,我無法成功完成此操作。使用jQuery工具選擇一個標籤

我有一個搜索功能,當有人搜索時,我想要選擇搜索選項卡並進入視圖。

在搜索功能的結尾:

var tabby = jQuery('#right-tabs').tabs(); 
tabby.tabs('select', 1); // switch to second 

的HTML:

<div id="right1"> 
    <ul class="tabs" id="right-tabs"> 
     <li><a href="#" id="articles-tab">Articles</a></li> 
     <li><a href="#" id="search-tab">Search results</a></li> 
    </ul> 
    <div class="panes" id="right-panes"> 
     <div id="articles-panel"></div> 
     <div id="search-results-panel"></div> 
    </div> 
</div> 

我得到了一個螢火蟲錯誤說 「遺漏的類型錯誤:無法讀取的未定義的屬性 'jQuery的'」。

我也嘗試另一種方法...只是手動設置/刪除類,與此:

jQuery("ul#right-tabs a").removeClass('current'); 
jQuery("ul#right-tabs a#search-tab").addClass('current'); 
jQuery("div#articles-panel").hide(); 
jQuery("div#search-results-panel").show(); 

這樣的作品,但它創造不會讓你點擊任何其他選項卡,直到一個奇怪的行爲,你點擊選中的選項卡,然後它會讓你點擊其他的。

因此,我不確定如何讓jQuery工具與我想要做的事情配合。這應該很簡單,我正在考慮在這方面進行拯救,並且從頭開始寫。但是如果你們有辦法讓這兩種方法都有效,或者更好的方法,我會非常感激!

UPDATE

所有我需要的是:

var api = jQuery("ul#right-tabs").data("tabs"); 
api.click(1); 

我被錯誤地發現了jQuery的標籤,而不是jQuery的工具選項卡的例子。

+0

你可以在jsFiddle中重新創建問題嗎? http://jsfiddle.net/ – thinkdevcode

+0

我無法在jQuery Tools選項卡api文檔的'select'方法中找到任何東西。你確定'select'是一個有效的方法嗎?我可以通過這樣做來選擇一個特定的選項卡:'$(「#right-tabs li a」)[1] .click()',但我認爲會有一種方法。 – RoccoC5

+0

已修復!答案是:var api = jQuery(「ul#right-tabs」)。data(「tabs」); api.click(1); – skiindude22

回答

3

我需要的是:

var api = jQuery("ul#right-tabs").data("tabs"); 
api.click(1); 

我被錯誤地發現了jQuery的標籤,而不是jQuery的工具選項卡的例子。