如果在元素内找到特定值,则使用jquery隐藏元素

时间:2018-05-10 10:17:33

标签: javascript jquery

我有创建动态部分的页面。通过获取它的类引用如果在任何部分中它找到值None,则放置的下一个div应该隐藏。我有一种结构。



$(document).ready(function() {
  jQuery(".product-tile").each(function() {
    var tileType = jQuery(this).find("h3").text();
    if (tileType == "None") {
      $(this).child("div").hide();
    }
  });
});

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="product-tile">
  <h3>Health</h3>
  <div><i>i Icon</i></div>
</div>

<div class="product-tile">
  <h3>Wealth</h3>
  <div><i>i Icon</i></div>
</div>

<div class="product-tile">
  <h3>None</h3>
  <div><i>i Icon</i></div>
</div>

<div class="product-tile">
  <h3>Others</h3>
  <div><i>i Icon</i></div>
</div>
&#13;
&#13;
&#13;

所以第3部分的<h3>有“无”,因此它的下一个div应该被隐藏。

2 个答案:

答案 0 :(得分:1)

根据您的标记结构,您可以通过单行代码实现它:

$(".product-tile h3:contains('None')").next('div').hide();

答案 1 :(得分:0)

在这里,您可以轻松查看:

 $(document).ready(function() {
  $(".product-tile").each(function() {
    var tileType = jQuery(this).find("h3").text();
     if (tileType == "None") {
      $(this).find("div").hide();
     }
  });
});