2016-05-12 14 views
1

Ich verwende Bootstrap-Registerkarten und einige hinzugefügte jquery, um die Registerkarte basierend auf der URL anzuzeigen. Was ich erreichen möchte, ist das gleiche Verhalten mit einem einfachen Textlink, aber ich weiß nicht, was mir fehlt.Textlink zum Ändern der Bootstrap-Registerkarte?

So, während in dem ersten Registerkarte unten zu klicken Sie auf:

<a class="xam" href="#second-tab">link to other page tab</a> 

und auf den zweiten Registerkarte navigieren.

<ul class="nav nav-tabs"> 
<li><a href="#first-tab" data-toggle="tab">first<i class="fa"></i></a></li> 
<li><a href="#second-tab" data-toggle="tab">second<i class="fa"></i></a></li> 
</ul> 

hier ist die jquery

var url = document.location.toString(); 
if (url.match('#')) { 
    $('.nav-tabs a[href="#' + url.split('#')[1] + '"]').tab('show'); 
} 

// Change hash for page-reload 
$('.nav-tabs a').on('shown.bs.tab', function (e) { 
    window.location.hash = e.target.hash; 
}) 
+0

versuchen, dies - '$ (‘ nav-Tabs einen [href = "#.‘ + Url.split ("#") [1] + '"] ') Registerkarte (' show');. 'Ich habe 'url.split (" # ")' anstelle von 'url.split (' # ')' benutzt oder einfach 'url.split (' # ') [1]' in einigen 'var' gespeichert und benutze es . Die Anführungszeichen (', ") könnten ein Problem verursachen. – Bhumika107

+0

@ Developer107 ich glaube nicht, dass Sie die Frage verstanden – villoui

Antwort

1

so etwas?

$('.xam').on('click', function(){ 
    var tab = $(this).attr("href"); 
    $('a[href="'+tab+'"]').tab('show') 
    $(tab).tab('show') 
}); 
+0

Ja, das funktioniert http://bootply.com/WaiOYtOUgF – ZimSystem

Verwandte Themen