使用Jquery搜索和隐藏文本

时间:2016-05-11 14:38:52

标签: javascript jquery html

我想使用jQuery查找一些文本,它存在,我想隐藏它。

因此,如果存在: Yes,则应隐藏它。

HTML:

<div class="listing_detail col-md-4"><strong>Living Room:</strong><span class="hide-this-tag"> Yes</span></div>
<div class="listing_detail col-md-4"><strong>Kitchen:</strong><span class="hide-this-tag"> No</span></div>

Jquery的:

 $('.listing_detail:contains("Yes")').hide('.hide-this-tag');

上面的Jquery隐藏了整个div而不仅仅是: Yes

Fiddle

3 个答案:

答案 0 :(得分:3)

试试这个:

&#13;
&#13;
$('.hide-this-tag:contains("Yes")').hide();
OR
$('span.hide-this-tag:contains("Yes")').hide();
OR
$('div.listing_detail span.hide-this-tag:contains("Yes")').hide();
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="listing_detail col-md-4"><strong>Living Room:</strong><span class="hide-this-tag"> Yes</span></div>
<div class="listing_detail col-md-4"><strong>Kitchen:</strong><span class="hide-this-tag"> No</span></div>
&#13;
&#13;
&#13;

http://api.jquery.com/hide/

答案 1 :(得分:3)

您无法将选择器传递给.hide()。你在一个对象上使用它:

&#13;
&#13;
$('.listing_detail:contains("Yes")').find('.hide-this-tag').hide();
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<div class="listing_detail col-md-4"><strong>Living Room:</strong><span class="hide-this-tag"> Yes</span></div>
<div class="listing_detail col-md-4"><strong>Kitchen:</strong><span class="hide-this-tag"> No</span></div>
&#13;
&#13;
&#13;

答案 2 :(得分:0)

由于您在代码末尾添加了.hide,因此选择了所选元素(<div>),您需要的是:

if($('.listing_detail:contains("Yes")').length > 0){
     $('.hide-this-tag').hide(); //After you checked that the "Yes" exsists, hide the tag.
}