2012-01-31 12 views
7

Tam olarak burada açıklandığı gibi sorun yaşıyorum: http://bugs.jqueryui.com/ticket/7930. Sorun, bakıcının bunu üretememesi, yani biletin kapanması. Kodum şu şekilde görünür:jquery UI sekmelerinde ajax etkin sekmeyi ön seçimi

<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> 

Bu kimlik ile 'sekmeleri oluşturur: # ui-tabs-1, # ui-tabs-2, # ui-tabs-3, # ui-tabs-4. Sayfaya url: http://server/Admin?tab=1 üzerinden erişiyorum. Uygun sekme seçilir (raporlarla ikinci), ancak ajax çağrısı önceki sekmenin (kullanıcı rolleri) hrefine yapılır. Gösterilen boş bir sekme içeriği ile sonuçlanır. Nasıl tamir edeceğini biliyor musun?

+0

ajax çağrısından sorumlu kodu ekleyebilir misiniz? – Rafay

+0

Otomatik olarak UI sekmeleri tarafından yapılır. UL listesinde bir eleman sağladığımda, hrefs alır ve sekmeleri değiştirirken ajax çağrılarını otomatik olarak yapar. Bu işlevi gerçekleştirmek için kodunuzu yazmanız gerekmez. –

+0

jquery ui'nin (1.8.17) en son sürümünü kullanıyor musunuz? –

cevap

5

kullandığım:

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

Ama örneğin sonuçlandı böylece tabIndex (I url veya url karma adresinden temin) bir dize: Bu durumda

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

beklenmedik davranışları gözlemleyebilirsiniz. tabindex

tabIndex = Number(tabIndex)

üzerinde
Arama Numarası fonksiyon sorunu çözer.