2012-01-31 15 views
7

ここに記載されているのとまったく同じ問題があります:http://bugs.jqueryui.com/ticket/7930。問題は、メンテナがそれを再現できないため、チケットが閉じられていることです。私のコードは次のようになります。jqueryのUIタブのajax対応タブの事前選択

<script type="text/javascript"> 
    $(document).ready(function() { 
     // assigns the value of a GET parameter called tab to tabIndex 
     var tabIndex = getUrlVars()['tab']; 

     if (isNaN(tabIndex)) { 
      tabIndex = 0; 
     } 

     // initializes tabs and selects the one provided in tabIndex (default: 0) 
     $('div#tabs').tabs({ ajaxOptions: { cache: false}, selected: tabIndex }); 
    }); 
</script> 
<div id="tabs"> 
    <ul> 
     <li>@Html.ActionLink("User roles", "Roles", "Admin", New With {.rand = DateTime.Now.Ticks}, Nothing)</li> 
     <li>@Html.ActionLink("Report templates", "Reports", "Admin", New With {.rand = DateTime.Now.Ticks}, Nothing)</li> 
     <li>@Html.ActionLink("Blabla", "2", "Admin")</li> 
     <li>@Html.ActionLink("Blabla2", "3", "Admin")</li> 
    </ul> 
</div> 

これは、IDのでタブを作成します。#UI-タブ-1、#のUI-タブ-2、#のUI-タブ-3、#のUI-タブ-4。私はURL:http://server/Admin?tab=1経由でページにアクセスします。適切なタブが選択されています(レポートの2番目のタブ)が、前のタブ(ユーザロール)のhrefに対してajax呼び出しが行われます。空のタブの内容が表示されます。あなたはそれを修正する方法を知っていますか?

+0

ajax呼び出しを担当するコードを追加できますか? – Rafay

+0

これはUIタブによって自動的に行われます。 ULリストに要素を提供すると、hrefが取り込まれ、タブを変更すると自動的にajaxが呼び出されます。この機能を実現するためにコードを書く必要はありません。 –

+0

jquery ui(1.8.17)の最新バージョンを使用していますか? –

答えて

5

は、私が使用:

$('#tabs').tabs({ selected: tabIndex });

しかし、それは例えばが生じたので、tabIndexには、(私はURLまたはURLハッシュから入手)の文字列だった:この場合

$('#tabs').tabs({ selected: "2" });

そのような予期しない動作を観察することができます。 tabIndex

tabIndex = Number(tabIndex)


発信番号の機能は、問題を解決します。

関連する問題