Javascript 获得额外的';李';在ul
每次用户点击li时,新的ul应该添加到该li中,基本上希望使用ul创建二叉树Javascript 获得额外的';李';在ul,javascript,jquery,html,Javascript,Jquery,Html,每次用户点击li时,新的ul应该添加到该li中,基本上希望使用ul创建二叉树 $(“#树”)。在('click','li',function()上{ $(this).append(“list1list2”;) sdfsdf 您必须停止单击事件的传播,即 $('#tree').on('click', 'li', function(e) { e.stopPropagation(); $(this).append('<ul style="display:block;"&
$(“#树”)。在('click','li',function()上{
$(this).append(“- list1
- list2
”;)代码>
-
sdfsdf
您必须停止单击事件的传播,即
$('#tree').on('click', 'li', function(e) {
e.stopPropagation();
$(this).append('<ul style="display:block;"><li>list1</li><li>list2</li></ul>');
});
$('#tree')。在('click','li',函数(e)上{
e、 停止传播();
$(此).append(“- list1
- list2
”);
});
您需要使用event.stopPropagation()代码>以便不传播父事件。由于在li
中单击li
将触发两次单击事件,因此您需要停止父级的单击事件,并仅触发您已单击的事件
$(“#树”)。在('click','li',函数(事件){
event.stopPropagation();
var ulExist=$(this.find('ul');
if(ulExist.length==0){
$(此).append(“- list1
- list2
”);
}
});代码>
-
sdfsdf
请解释原因。。这个解决方案解决了OP的问题有没有办法限制它只添加一次ul?就像每个李应该只有一个ul。在上面的代码中,我能够将多个ul添加到liple中。这里的人真是太棒了。有人能解释为什么它被否决了吗@有没有办法限制它只添加一次ul?就像每个李应该只有一个ul。在上面的代码中,我能够将多个ul添加到li@shefali什么意思?ul>li>ul?而不是ul>li>ul>li>ul>li…?多次单击列表1,它多次添加ul。我想限制它,只允许一个ul每李。这意味着,如果我多次单击列表1,它不应该向单击的列表添加多个ulli@shefali您已接受并勾选了另一个答案。这个答案有用吗?我还根据您的需要对其进行了更新。