我想删除包含{id}开头的<li>
元素的所有<a>
:'ids'。
在:
<li class="inner" style="width:100%;"><a style="width:100%;" id='ids1' href="#">hi</a></li>
<li class="inner" style="width:100%;"><a style="width:100%;" id='ids2' href="#">hello</a></li>
<li class="inner" style="width:100%;"><a style="width:100%;" id='ids2' href="#">hi</a></li>
<li class="inner" style="width:100%;"><a style="width:100%;" id='myid' href="#">hi</a></li>
后:
<li class="inner" style="width:100%;"><a style="width:100%;" id='myid' href="#">hi</a></li>
我试过了:
$("a[id^='ids']").remove();
但<li>
和文字是什么?
答案 0 :(得分:6)
你可以做
$("li").has("a[id^='ids']").remove();
或
$("a[id^='ids']").closest('li').remove();
答案 1 :(得分:5)
你可以这样做:
$("li").has("a[id^='ids']").remove();
或
$("a[id^='ids']").parent().remove();
(假设a
是li
)的孩子
另请注意,您cannot have two elements with same id(我称之为ids2
)。
答案 2 :(得分:2)
要删除li
和文本,您应该在删除之前遍历一级:
$("a[id^='ids']").parent().remove();