根据其内容删除 html 标签?

Remove html tag judging by its content?

我正在尝试删除 <p><a class="link" href="Dynamic-URL">Dynamic Title</a>:</p>

的所有实例

我单独删除了标签,但这仍然给我留下了 :,即使我删除了它,所有 : 也会从任何 <p>

中删除

有没有办法删除 <p> 标签及其包含 a.link 的内容?

所以这有什么问题,这将检查所有 p 标签,如果在返回中包含 a.link 则将其删除:

 $('p').has('a.link').remove()

DEMO

是的,你可以。

工作Fiddle:http://jsfiddle.net/1Ljgnkut/

HTML

<a href = "#">One</a>
<p>
  <a class = "link" href = "#">Two</a>:
</p>
<p>
  <a class = "link" href = "#">Three</a>:
</p>
<a class = "link" href = "#">Four</a>

JavaScript(使用jQuery)

$(document).ready(function () {

  $("p .link").closest("p").remove();

});

您可以通过 jquery:

这行获取 <p><a class="link" href="Dynamic-URL">Dynamic Title</a>:</p> 的所有实例
$("p a.link")

然后你可以遍历数组中的所有元素并像这样将它们一一删除:

   $("p a.link").each(function(){
     $(this).remove();
   });

您可以尝试这种方法来解决您的问题

$("p").each(function(){
    if((this).siblings("a").hasClass("link"))
    {
        $(this).remove();
    }
});

希望这对您有所帮助....

试试这个。

$("p > a.link").parent().remove();