我发现一些代码用于很好地折叠和展开我的列表项,因为我不希望在页面显示时立即显示整个列表:
$(function(){
$('li:has(ul)').click(function(event){
if(this==event.target){
$(this).css('list-style-image',(!$(this).children().is(':hidden'))?'url(plus.gif)':'url(minus.gif)');
$(this).children().toggle('fast');
}
return false;
})
.css({cursor:'pointer','list-style-image':'url(plus.gif)'}).children().hide();
$('li:not(:has(ul))').css({cursor:'default','list-style-image':'none'});
});
</script>
我添加了一些带有文本框的列表项,但现在我还需要复选框。当我在列表项中添加复选框时,它变得不可单击。
我已经将范围缩小到上面的代码搞砸了复选框。我可以修改代码以允许选中复选框吗?
最佳答案
问题是您返回 false
,这在 jQuery 事件处理程序中相当于 event.preventDefault()
和 event.stopPropagation()
>。注释掉它就可以了。
关于javascript - <li> html 条目内的复选框不可点击 - 与用于折叠/展开列表项的 javascript 结合使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6170237/