2013-08-26 6 views
6

Ho cercato in rete e ho provato molti esempi, ma non riesco a capire perché non riesco a mostrare una scheda specifica attraverso jQuery. Questa è la mia scheda HTML:jQuery Tab di avvio di Twitter selezionare

<ul class="nav nav-tabs nav-inside-tabs" id="cartTabs"> 
    <li class="active"><a href="#cart-tab" data-toggle="tab" class="cart-btn">Purchases</a></li> 
    <li><a href="#cart-data-tab" data-toggle="tab" id="cart-data-btn" class="cart-btn">Data</a></li> 
    <li><a href="#cart-pay-tab" data-toggle="tab" id="cart-pay-btn" class="cart-btn">Pay</a></li> 
</ul> 
<div class="tab-content"> 
    <div class="tab-pane active" id="cart-tab"> 
    Cart 
    </div> 
    <div class="tab-pane" id="cart-data-tab"> 
    Content data 
    </div> 
    <div class="tab-pane" id="cart-pay-tab"> 
    Content pay 
    </div> 
</div> 

Ho provato un interruttore e lo spettacolo di allarme per bene, ma non attiva la scheda corretta:

$('#cart-goon-btn').click(function(e){ 
    e.preventDefault(); 
    if(!$(this).attr('disabled')){ 
     var current_tab = $('.tab-pane.active').attr('id'); 
     switch(current_tab){ 
      case 'cart-tab': 
       $('#cartTabs li a').eq($('#cart-data-tab')).tab('show'); 
       alertify.alert('1') 
      break; 
      case 'cart-data-tab': 
       //cart-pay-tab 
       alertify.alert('2') 
      break; 
      case 'cart-pay-tab': 
       //checkout 
      break; 
     } 
    } 
}); 

Qualsiasi suggerimento?

risposta

25

Invece di chiamare .tab('show') sul div si desidera essere visibile, provare a farlo sull'elemento a che si usa per attivarla:

$('a[href="#cart-data-tab"]').tab('show'); 

O probabilmente meglio ancora, basta farlo da ID:

$('#cart-data-btn').tab('show'); 
+0

@ Mr.Web: vedere la mia modifica. Ho dovuto rinfrescare la memoria su bootstrap. –

+0

: D Funziona come un fascino! Tks. Tra pochi minuti lo controllerò come risposta! –

+1

Inoltre, il plugin 'alertify.js' sembra davvero bello - grazie per avermi condotto con la tua domanda! –