我正在尝试使用jQuery以编程方式更改标签。我试图实现@MasterAM here给出的解决方案。但是,Chrome控制台会显示错误Uncaught TypeError: undefined is not a function
这是我的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>
这是jQuery:
$(document).ready(function() {
$("#click-me-div").click(function() {
alert('yes, the click actually happened');
('.nav-tabs a[href="#samosas"]').tab('show');
});
});
期望的结果是,如果我点击&#34;点击我&#34;,活动标签应该更改为&#34; samosas&#34;标签
我做错了什么?
答案 0 :(得分:37)
你遗漏了jQuery函数
$(document).ready(function() {
$("#click-me-div").click(function() {
alert('yes, the click actually happened');
$('.nav-tabs a[href="#samosas"]').tab('show');
});
});
答案 1 :(得分:1)
试试此代码
您可以使用标签的onclick()
功能和路径ID名称。
<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>