2012-04-24 13 views
6

Le schede funzionano correttamente quando si fa clic ma la selezione della scheda predefinita sul caricamento della finestra non riesce. Il javascript funziona, senza errori, ma non succede nulla. Qualche idea?Impossibile impostare il valore predefinito nella scheda di avvio di Twitter Bootstrap

<head> 
<link href="/assets/bootstrap.css?body=1" media="screen" rel="stylesheet" type="text/css" /> 
</head> 

<script> 
    //<![CDATA[ 
    window.onload=function() { 
     $('#client_tab2').tab(); 
     }; 
    //]]> 
</script> 
<ul class='nav nav-tabs' id='tab'> 
    <li><a href="#client_tab1" data-toggle="tab">General</a></li> 
    <li><a href="#client_tab2" data-toggle="tab">Applications</a></li> 
    <li><a href="#client_tab3" data-toggle="tab">Family</a></li> 
    <li><a href="#client_tab4" data-toggle="tab">Memos</a></li> 
</ul> 

<form accept-charset="UTF-8" action="/clients/4512" class="simple_form client tab-content" id="edit_client_4512" method="post" novalidate="novalidate"> 
    <div class='tab-pane active' id='client_tab1'> 
    <legend>General Information</legend> 
    </div> 

    <div class='tab-pane' id='client_tab2'> 
    <legend>Application Information</legend> 
    </div> 

    <div class='tab-pane' id='client_tab3'> 
    <legend>Family</legend> 
    </div> 

    <div class='tab-pane' id='client_tab4'> 
    <legend>Memos</legend> 
    </div> 
</form> 

risposta

10

vostro selettore è sbagliato, provare come questo, invece:

$(window).load(function(){ 
    $('#tab a[href="#client_tab2"]').tab('show'); 
}); 

Demo: http://jsfiddle.net/TjjKE/

+0

Molto bello! Non ho potuto usare $ (window) .load ma window.onload con il resto del tuo tip funziona alla grande! Grazie. –

9

È inoltre possibile impostare una scheda predefinita come attivo di appena <li class="active"><a href="#whatever">....</a></li> e poi sulla scheda appropriata avere <div id="whatever" class="tab-pane active">..</div> ed eliminare la necessità di più JS. dare un'occhiata a this