Javascript jQuery,查找没有id没有类但有文本的子div

Javascript jQuery,查找没有id没有类但有文本的子div,javascript,php,jquery,html,Javascript,Php,Jquery,Html,我有以下代码: <div> <div> <div> <div> <div> I am here </div> <div> Another div</div> <div> Find me I am here </div>

我有以下代码:

<div>
    <div> 
        <div> 
            <div>
                <div> I am here </div> 
                <div> Another div</div>
                <div> Find me I am here </div>
            </div> 
       </div>
    </div>
</div>

我在这里
另一个部门
找到我,我在这里
我试图隐藏包含文本“找到我,我在这里”的div


$(文件).ready(函数(e){
$(“div:contains('Find me i am here'))).css(“display”,“none”);
});
但是上面的代码不适合我? 请帮忙。
提前感谢

因为它还将返回所有祖先div,所以您需要从
:contains

$("div:contains('Find me i am here'):not(:has(*))").hide();

演示:

因为它还将返回所有祖先div,所以您需要从
:contains

$("div:contains('Find me i am here'):not(:has(*))").hide();

演示:

您可以使用
:contains
获取元素,请参阅下面的代码

$('div:contains("test")').hide();

您可以使用
:contains
获取元素,请参见下面的代码

$('div:contains("test")').hide();

您还可以使用
if
条件和方法来执行此操作,这将比使用
:contains()
更精确,因为
:contains()
将查找该文本,即使该文本与另一个字符串一起使用,因此它甚至会匹配如下内容

<div>Hey I don't want to hide this Find me i am here</div>


注意:我在
if
条件中的字符串前后有一个空格用于比较,重要的是,如果您想使其更严格,请使用
.trim()
从字符串的开头和结尾截断空白


此外,如果您希望针对具有该文本但不具有类或id属性的元素,请使用下面的代码

$(document).ready(function(e) {
    $('div:not([class]):not([id]').each(function() { 
        //Select only div which doesn't have class or id attributes
        if($(this).html() == ' Find me i am here ') {
            $(this).css({'display': 'none'});
        }
    });
});

您也可以使用
if
条件和方法来执行此操作,甚至比使用
:contains()
更精确,因为
:contains()
将查找该文本,即使该文本包含另一个字符串,因此它甚至会匹配以下内容

<div>Hey I don't want to hide this Find me i am here</div>


注意:我在
if
条件中的字符串前后有一个空格用于比较,重要的是,如果您想使其更严格,请使用
.trim()
从字符串的开头和结尾截断空白


此外,如果您希望针对具有该文本但不具有类或id属性的元素,请使用下面的代码

$(document).ready(function(e) {
    $('div:not([class]):not([id]').each(function() { 
        //Select only div which doesn't have class or id attributes
        if($(this).html() == ' Find me i am here ') {
            $(this).css({'display': 'none'});
        }
    });
});

您可以将回调函数添加到
.html()
方法本身

data
将html内容保存在div中,然后将其与搜索的文本进行比较

$(document).ready(function(e) {     
   $('div').html(function(t,data) {
       if(data ===' Find me i am here ')
        $(this).css("display","none");
   });
});

这是fiddle

您可以向
.html()
方法本身添加回调函数

data
将html内容保存在div中,然后将其与搜索的文本进行比较

$(document).ready(function(e) {     
   $('div').html(function(t,data) {
       if(data ===' Find me i am here ')
        $(this).css("display","none");
   });
});

这是小提琴

@RajaprabhuAravindasamy可能是:)我只是在搜索文本,当然那个div中没有html,所以,我在你的代码中将.html()改为.text(),它现在真的对我有用。谢谢dude@AbdulRahman哎呀,我犯了一个错误,应该是
.text()
,你欢迎:)@AbdulRahman实际上这会更严格,所以我不会改变,就像错误纠正了一样heheYa,你是对的,但在这种情况下,我只有一个静态文本,没有其他内容。:)@RajaprabhuAravindasamy可能是:)我只是在搜索文本,当然那个div中没有html,所以,我在你的代码中将.html()改为.text(),现在它对我来说真的很有用。谢谢dude@AbdulRahman哎呀,我犯了一个错误,应该是
.text()
,你欢迎:)@AbdulRahman实际上这会更严格,所以我不会改变,就像错误纠正了一样heheYa,你是对的,但在这种情况下,我只有一个静态文本,没有其他内容。:)