我使用bootstrap创建了一个按钮选项卡。我使用循环动态制作它们。
<ul class="nav nav-tabs" style="border-bottom:0px">
<li class="active">
<a data-toggle="tab" class="mybtn" id=' + mapport.selected_feature_layer[i] + '>' + layer_names[i] + '</a>
</li>
</ul>
当我为他们分配一个活跃的课程时,它对我有用。但是在我给他们分配一个课程并调用一个函数self.click($(this).attr('id'));
之后,课程活动消失了,设计就消失了。的活性
为什么会这样?
$(".mybtn").click(function(){
self.click($(this).attr('id'));
$('.active').removeClass('active')
$(this).addClass('active');
});
答案 0 :(得分:1)
您需要以不同的方式定义点击功能,以使其适用于动态添加的元素
$(document).on("click", ".mybtn", function(){
//self.click($(this).attr('id'));
$('.active').removeClass('active')
$(this).addClass('active');
});
&#13;
.active {background-color:blue;}
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<ul class="nav nav-tabs" style="border-bottom:0px"><li><a data-toggle="tab" class="mybtn" id='abc'>abc</a></li><li><a data-toggle="tab" class="mybtn" id='abc'>abc</a></li></ul>
&#13;