我是jQuery的新手。
我有以下列表元素。
<ul>
<li>
<a href="abc">ABC</a>
</li>
<li> <!-- I want to remove this element-->
<ul>
<li>
<a href="def">DEF</a>
</li>
<li>
<a href="ghi">GHI</a>
</li>
</ul>
</li>
</ul>
我想删除使用jQuery具有GHI锚标记的LI元素(在上面的示例中评论)。 或者以其他方式我想根据锚标记中包含的href属性或文本删除该元素。
请帮忙
答案 0 :(得分:3)
$("ul:first > li:eq(1)").remove()
选择第一个ul,然后删除第二个孩子。
或者如果你的意思是带有GHI标签的li,
$("ul:eq(1) > li:eq(1)").remove()
选择第二个ul,找到第二个孩子。
答案 1 :(得分:2)
要删除位于li
锚点上方某处的href="ghi"
元素,您可以执行以下操作:
jQuery('a[href="ghi"]').parents('ul > li').remove();
或者需要删除的li
元素不是ul
元素的直接子元素(好点,mrtsherman):
jQuery('a[href="ghi"]').parents('ul li').remove();
查看实际操作:jsfiddle.net/tadeck/EmZ4N/
答案 2 :(得分:1)
如果你想用某些href删除li:
$('li > a[href^="abc"]').remove();
即选择包含href以“abc”开头的锚的所有列表项,然后将其删除。
答案 3 :(得分:1)
$('a[href="ghi"]').closest('li').closest('li').remove();