删除<a>标签开头的所有<li>:'ids'

Alo*_*iel 2 jquery

我想删除所有<li>包含<a>id开头的元素:'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>
Run Code Online (Sandbox Code Playgroud)

后:

<li class="inner" style="width:100%;"><a style="width:100%;" id='myid' href="#">hi</a></li>
Run Code Online (Sandbox Code Playgroud)

我试过了:

$("a[id^='ids']").remove();
Run Code Online (Sandbox Code Playgroud)

但是关于<li>和文本是什么?

Den*_*ret 6

你可能会这样做

$("li").has("a[id^='ids']").remove();
Run Code Online (Sandbox Code Playgroud)

要么

$("a[id^='ids']").closest('li').remove();
Run Code Online (Sandbox Code Playgroud)


Ion*_*zău 5

你可以做:

$("li").has("a[id^='ids']").remove();
Run Code Online (Sandbox Code Playgroud)

的jsfiddle

要么

$("a[id^='ids']").parent().remove();
Run Code Online (Sandbox Code Playgroud)

(假设那a是孩子li)

的jsfiddle

另外,请注意,您不能拥有两个具有相同ID的元素(我指的是ids2).