删除除使用 jQuery 单击的列表项之外的所有其他列表项

Remove all other list items except the one that is clicked using jQuery

本文关键字:列表 其他 jQuery 单击 删除      更新时间:2023-09-26

>我有这种列表

<ul>
<li><div class="pname">Name1</div><div class="pid">ID1</div>...</li>
<li><div class="pname">Name2</div><div class="pid">ID2</div>...</li>
<li><div class="pname">Name3</div><div class="pid">ID3</div>...</li>
...
</ul>

如果我单击任何列表项,则其余所有其他列表项都应删除。谁能建议我怎么做?

假设this是点击的li元素:

$(this).siblings('li').not(this).remove();

如果单击处理程序绑定到列表项中的某些内容:

$(this).closest('li').siblings('li').not($(this).parents()).remove();

您可以简单地将ul内容替换为单击的项目:

$('ul li').click(function(ev){
    $(this).closest('ul').html($(this));
});​

查看演示

jQuery solution...

$('li').click(function() {
    $(this).siblings().remove();
});