我现在有一个带标签的索引页,它们还没有链接到任何地方,但我正在尝试在您单击标签时设置事件类。
这里是选项卡:
<ul class="nav nav-tabs">
@foreach(var division in Model)
{
<li class="span2""><a href="#">@division.Description</a></li>
}
<li class="active span2"><a href="#">All</a></li>
<li class="span2"><a href="#">Summary</a></li>
</ul>
和jquery:
<script type="text/javascript">
$(document).ready(function() {
$("#tabs li").click(function() {
$("#tabs li").removeClass('active');
$(this).addClass("active");
$(".tab_content").hide();
$(selected_tab).fadeIn();
var selected_tab = $(this).find("a").attr("href");
});
});
我还尝试在指向函数 SetActiveTab() 的选项卡上设置一个 onclick 事件,并尝试删除其中的事件类,但这也不起作用:
function SetActiveTab() {
$("#tabs li").removeClass("active");
}
我在这里错过了什么?
最佳答案
您正在尝试通过 id #tabs
引用 li
的父元素。可能是您的代码片段不完整,并且您确实有 li
的父 #tabs
元素,但如果没有,您可以使用类 访问
、li
.nav.nav-tabs
或两者都是 .nav.nav-tabs
。此外,通过这种方式,您将访问页面上的所有选项卡集,而不仅仅是具有特定 ID 的选项卡。
例子:
$(document).ready(function() {
$(".nav.nav-tabs li").click(function() {
$("#tabs li").removeClass('active');
$(this).addClass("active");
$(".tab_content").hide();
$(selected_tab).fadeIn();
var selected_tab = $(this).find("a").attr("href");
});
});
或者,您可以为 li
的父元素指定一个 id:
<ul class="nav nav-tabs" id="tabs">
关于jquery - jquery 中的 html 选项卡 removeClass 和 addClass 不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13468725/