如何在Bootstrap UL列表的项目上添加事件处理程序?这些项目是动态添加的。
在Bootstrap中,UL是:
<div class="col-sm-3">
<ul class="list-group" id="solvedList"></ul>
</div>
我动态添加列表项,因此列表中可能有50个项目。
可以像这样创建列表项:
$.each(list, function(index, solved) {
$('#solvedList').append('<li><a href="#" class="solvedlix" class="list-group-item" data-identity="' + solved.id+ '">'+ solved.name+'</a></li>');
});
经过一些研究后,我尝试了这些事件处理程序。
尝试1 :(没有引导程序):
$('#solvedList a').live('click', function() {
alert( $(this).data('identity'));
});
尝试2:
$('.solvedlix').click(function(e) {
var name = e.currentTarget;
alert( 'Name is ' + name.getAttribute("data-identity"));
});
尝试3:
$("ul li").on("click", function() {
alert( "In here ...getting access to the sub item later ");
});
答案 0 :(得分:1)
您应该阅读this。事件冒泡/委派可能会有所帮助,因此您应该尝试使用此功能:
fun indexOfMax(a: IntArray): Int? {
return a.foldIndexed(null as Int?) { index, accumulator, element ->
if (accumulator == null) index
else if (element >= a[accumulator]) index
else accumulator
}
}
希望这有帮助!