2014-06-21 19 views
7

Ich experimentierte mit dem programmatischen Ändern Tabs mit jQuery. Ich habe versucht, die Lösung von @MasterAM here zu implementieren. Allerdings zeigt die Chrome-Konsole den Fehler Uncaught TypeError: undefined is not a functionÄndern der aktiven Bootstrap 3-Registerkarte mit jQuery

Hier ist mein HTML:

<div id="click-me-div">Click Me</div> 

<ul class="nav nav-tabs"> 
    <li class="active"><a href="#fruits" data-toggle="tab">I like Fruits</a></li> 
    <li><a href="#veggies" data-toggle="tab">I like Veggies Too</a></li> 
    <li><a href="#samosas" data-toggle="tab">But Samosa's Rock</a></li> 
</ul> 

<div class="tab-content"> 
    <div class="tab-pane active" id="fruits">Apple, Kiwi, Watermellon</div> 
    <div class="tab-pane" id="veggies">Kale, Spinach, Pepper</div> 
    <div class="tab-pane" id="samosas">Awesome, Spine Tingling, Explosive</div> 
</div> 

Und hier ist die jQuery:

$(document).ready(function() { 
    $("#click-me-div").click(function() { 
     alert('yes, the click actually happened'); 
     ('.nav-tabs a[href="#samosas"]').tab('show'); 
    }); 
}); 

Das gewünschte Ergebnis ist, dass, wenn ich auf „Klick mich ", sollte die aktive Registerkarte zur Registerkarte" Samosas "wechseln.

Was mache ich falsch?

Antwort

20

Sie verlassen die jQuery-Funktion aus

$(document).ready(function() { 
    $("#click-me-div").click(function() { 
     alert('yes, the click actually happened'); 
     $('.nav-tabs a[href="#samosas"]').tab('show'); 
    }); 
}); 

Fiddle

+0

doh! Danke :) –

+0

Danke Motti! Es ist einfach und großartig .. – Gurusinghe

1

Versuchen Sie diesen Code

Sie onclick() Funktion und Pfad-ID Name der Registerkarte verwenden können.

<a onclick='ActivTab("Security")' class="nav-link" data-toggle="tab" href="#Security" aria-controls="profile" role="tab" id='Security'>Security</a> 


    <script> 
     $(document).ready(function(){ 
      ActivTab('Security'); 
     }); 
     function ActivTab(id){ 
//   $('.nav-tabs a[href="#' + id + '"]').tab('show'); 
      $('.nav-tabs a[href="#' + id + '"]').trigger('click'); 
     }; 
    </script> 
+0

Hallo Ayman, willkommen in SO! Es könnte eine gute Idee sein zu erklären, was Ihr Code-Schnipsel macht und warum Sie getan haben, was Sie getan haben, damit Neulinge es leichter verstehen. –

+0

Zuerst, vielen Dank für Ihren Rat. –

Verwandte Themen