使用文本搜索并删除节点jquery

时间:2014-09-19 15:15:34

标签: javascript jquery

这是我的DOM

<p>1</p>
<p>2</p>
<p>4</p>
<p>random text</p>
<p>765</p>
<p>whatever</p>
<p>http://www.google.com</p>
<p>hello world</p>

http://www.google.com可以在任何地方,所以没有固定的模式,那么我不能使用nth-child。一种方法是循环,但如果它被div包裹有任何优势吗?还是我们还要循环?

2 个答案:

答案 0 :(得分:2)

:contains适用于您的用例:

$("p:contains('http://www.google.com')").remove()

如果您想要更严格,可以使用过滤器和放大器的组合。文本:

$("p").filter(function() {
    return $(this).text().trim() === "http://www.google.com";
}).remove();

这两种解决方案都在内部使用循环,但当然大多数(全部?)解决方案都会。它看起来更漂亮。

答案 1 :(得分:1)

:包含选择器是您正在寻找的http://api.jquery.com/contains-selector/

alert($( "p:contains('http://www.google.com')" )