这似乎是一个简单的问题,但它让我很沮丧。我希望能够在不折叠列表的情况下单击包含复选框的下拉列表中的多个项目。我在ul、li和a元素上尝试了各种事件处理程序,但没有成功。其中包括e.preventDefault()、e.stopPropagation(),以及根据此答案防止通过"hide.bs.downdown"事件关闭ul。
我的列表项目:
<li class="serviceListItem">
<a class="serviceListItemLink">
<input class="checkService" type="checkbox" value="">
</a>
</li>
以及我当前的一组事件处理程序。我试过这些的大多数组合。
$('#serviceDropdown').on('hide.bs.dropdown', function() {
return false;
});
$('.serviceListItemLink').click(function(e) {
console.log('you clicked a service');
e.stopPropogation();
e.preventDefault();
});
$('.serviceListItem').click(function(e) {
e.stopPropogation();
e.preventDefault();
});
我应该添加我的UL有#servicesDropdown ID。感谢您提前提供的所有帮助
这就是您尝试过的代码吗?在这种情况下,您拼错了"propagation"。
应该是:
e.stopPropagation();
而不是:
e.stopPropogation();