如何在使用 Jquery 时将级别指定为 select :Contains

How Do I specify a level to select on using Jquery :Contains

我正在尝试 select 我的容器中包含特定文本的地方,然后相应地隐藏它们。

不过,似乎 select 子元素太多了,而不是主元素。

这导致我的部分容器消失。

$("#SearchText").on("keyup", function () { 
    var text = $("#SearchText").val(); 

    $(".myList :contains(" + text + ")").show();
    $(".myList :not(:contains(" + text + "))").hide();
});

html:

<div class="myList">
  <div class="container"> <!-- Wanting to select here -->
    <div> <!-- currently selecting here -->
      word
    </div>
   <div>  <!-- currently selecting here -->
      say
   </div>

   <div>  <!-- currently selecting here -->
     hello
   </div>
 </div>

附上Jfiddle: https://jsfiddle.net/661p4q0j/1/

您需要select或更具体。在这种情况下,仅 select 包含给定文本的 .container 元素,而不是 .myList 元素中包含的任何元素:

$(".myList .container:contains(...)")
$(".myList .container:not(...)")

JSFiddle demo.