是的,所以这已被问了大约1000次,但我尝试了答案,似乎没有一个对我有用。
以下是我的标签:
<ul class="nav nav-tabs">
<li><a href="#profile" data-toggle="tab">Profile</a></li>
<li><a href="#account" data-toggle="tab">Account</a></li>
<li><a href="#security" data-toggle="tab">Security</a></li>
<li><a href="#recruiting" data-toggle="tab">Recruiting</a></li>
</ul>
注意,默认情况下,没有一个设置为活动状态。选项卡窗格:
<div class="tab-content">
<div class="tab-pane fade" id="account">
Account
</div>
<div class="tab-pane fade" id="security">
Security
</div>
...more...
</div>
在我的js中,我按照bootstrap文档执行此操作:
$(window).load(function () {
$('#tab a:first').tab('show');
});
没有任何表现。我想要做的是让它默认打开第一个标签,但根据我传入的一些数据,我想在需要时调用它:
$('#tab a:[href="#security"]').tab('show');
答案 0 :(得分:35)
第一个问题在这里:
$('#tab a:first').tab('show')
#tab
引用了id="tab"
,但您没有#tab
。将.nav-tabs
替换为$('.nav-tabs a:first').tab('show')
或将ID添加到您的ul:
:
您的第二个问题是忘记删除a
旁边的$('.nav-tabs a:[href="#security"]').tab('show')
:
$('.nav-tabs a[href="#security"]').tab('show')
应该是:
{{1}}
答案 1 :(得分:8)
您的选择器中有:
,将其更改为
$('#tab a[href="#security"]').tab('show');
而不是
$('#tab a:[href="#security"]').tab('show');