我有一个具有相同类别的div列表:
<div class="1">
<a href="#">Hello</a>
<p>Hello</p>
</div>
<div class="1">
<a href="#">Welcome</a>
<p>Hello</p>
</div>
...
我需要删除所有包含名称为“Hello”的链接的div。
我只想出了这个:$(".1").remove(":contains('Hello')");
但它也删除了在p标签中包含Hello文本的div ..
答案 0 :(得分:0)
使用.has()
过滤掉具有href
问候锚标记的元素。基本上,通过检查filter
是否将source element
作为target element
传递,它将parameter
元素。
尝试,
$('.1').has('a[href="Hello"]').remove()
你也有一些无效的markups
,你错过了每个closing angle brackets
代码的anchor
。这是HTML的有效版本,
<div class="1">
<a href="Hello">hello</a>
<p>Hello</p>
</div>
<div id='test' class="1">
<a href="Welcome">welcome</a>
<p>Hello</p>
</div>
根据你在Arun Bro的帖子中的评论,
尝试,
$('.1').has('a:contains("Hello")').remove()