jQuery从包含特定标题的div中删除特定元素

时间:2013-12-14 17:24:54

标签: jquery

我有一个具有相同类别的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 ..

1 个答案:

答案 0 :(得分:0)

使用.has()过滤掉具有href问候锚标记的元素。基本上,通过检查filter是否将source element作为target element传递,它将parameter元素。

尝试,

$('.1').has('a[href="Hello"]').remove()

DEMO

你也有一些无效的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()

DEMO - I