我想做的是,如果h4包含单词“ bulk”,则尝试隐藏以下父div(它将隐藏名为“ eB cer”的div类)。
<div class="eB cer">
<h4>Bulk Load Files to CERs</h4>
<div class="tooltip"><b>Description: </b>You will add files to your CERs using the Bulk Load and Attribute Update Utility.<span class="tooltiptext">In this module you will learn how to add files to your CERs in bulk and modify any attributes as needed.</span>
</div>
<p><b>Link: </b><a href="http://ebassets.network.lan/eBPrdSC1/eB%20Help/eB%20Help__54.html" target="_blank">Bulk Load Files to CERs</a></p>
</div>
我有这个,它隐藏了h4,但不是整个div。
var searched_string = "eB cer";
var foundmatch = [];
for(i=0; i < leftFilteredArray.length; i++){
if(leftFilteredArray[i].match(searched_string)){
foundmatch.push(leftFilteredArray[i]);
$("div h4:contains('" + searched_string +"')").hide();
}
有人建议我在做什么错吗?
答案 0 :(得分:2)
您可以使用indexOf()
来返回找到指定字符串的第一个索引。否则返回-1。
if($('.eB.cer>h4').text().toLowerCase().indexOf('bulk')!==-1)
$('.eB.cer').hide()
答案 1 :(得分:1)
为了重新创建您的情况,我最终查看了jQuery行。然后,将其插入其余的代码中。这就是我的工作。
var searched_string = "Bulk";
var foundmatch = [];
for(i=0; i < leftFilteredArray.length; i++){
if(leftFilteredArray[i].match(searched_string)){
foundmatch.push(leftFilteredArray[i]);
$("div h4:contains('" + searched_string +"')").parent().hide();
}
}
此行将文本设置为小写,以减少问题。
var searched_string = "Bulk";
var foundmatch = [];
for(i=0; i < leftFilteredArray.length; i++){
if(leftFilteredArray[i].match(searched_string)){
foundmatch.push(leftFilteredArray[i]);
// $("div h4:contains('" + searched_string +"')").parent().hide();
if( $(".eB.cer h4").html().toLowerCase().indexOf(searched_string.toLowerCase()) > -1) {
$(".eB.cer").hide();
}
}
}