2011-09-30 48 views
0

我無法打開顯示特定jquery選項卡的頁面,該選項卡通過ajax加載其內容。jquery,通過外部超鏈接訪問頁面標籤「與ajax內容」?

問題是,jquery-ui打開由外部鏈接使用錨標籤調用標籤,但ajax內容標籤錨沒有一個。

任何想法

在此先感謝。

Basicaly在jQuery的UI演示相同的代碼
什麼,我想是在我的主頁的鏈接,將打開這個其他頁面已經顯示TABX

$(document).ready(function() { 
    $(function() { 
     $("#tabs").tabs({ 
      ajaxOptions: { 
         error: function(xhr, status, index, anchor) { 
          $(anchor.hash).html(
           "Couldn't load this tab. We'll try to fix this as soon as possible. " + 
           "If this wouldn't be a demo."); 
         } 
      } 
     }); 
    }); 
}); 



<div id="tabs"> 
    <ul> 
     <li class="tab first_tab"><a id="tab1" href="tab1.html">dit doen we</a></li> 
     <li class="tab"><a id="tab2" href="tab2.html">disciplines</a></li> 
     <li class="tab"><a id="tab3" href="tab3.html">cases</a></li> 
     <li class="tab"><a id="tab4" href="tab4.html">uitgelicht</a></li> 
    </ul> 
</div> 
+0

你可以把一些代碼在澄清你的問題? –

+0

Hi @WilliamNiu我加了代碼感謝您的幫助 – theRolk

+0

您的意思是你想要一個鏈接打開一個通過AJAX加載其內容的選項卡? –

回答

1

要選擇一個選項卡,你可以在.tabs()上使用select方法,例如$('#tabs').tabs('select', 1)將選擇第二個選項卡(選項卡索引爲1)。

要打開一個頁面並告訴它選擇一個選項卡,您需要以某種方式「傳遞意圖」。如果您使用AJAX進行頁面轉換,那麼您可以簡單地加載頁面並致電.tabs('select', tabIndex)

如果您在沒有AJAX的情況下加載第2頁,則可以使用查詢字符串傳遞一個變量,例如, ?loadTab=1並在正在加載的頁面中解析它。 location.search會給你查詢字符串。 This question將幫助你解析它。

因此,在第二頁,你會是這樣的:

$(function() { 
    $("#tabs").tabs({ 
     ... 
    }); 

    // code to parse the loadTab variable in the querystring 

    if (typeof(loadTab) !== 'undefined' && parseInt(loadTab) !== 'NaN') 
     $('#tabs').tabs('select', parseInt(loadTab)); 
} 
+0

謝謝@WilliamNiu完美的工作。 – theRolk

相關問題