Javascript 通过包含的字符串查找对象

Javascript 通过包含的字符串查找对象,javascript,jquery,html,Javascript,Jquery,Html,我试图通过包含在其中的字符串来选择某些对象 例如,如果我定义了一个单词数组,可以这样说: var searchTerms = ["apple", "banana"]; 如何从一系列相同的对象中选择包含这些术语之一的对象,并从DOM中删除包含这些术语的对象? 例如: <section class="node_category"> <h3>orange</h3> </section> <section class="node_categor

我试图通过包含在其中的字符串来选择某些对象

例如,如果我定义了一个单词数组,可以这样说:

var searchTerms = ["apple", "banana"];
如何从一系列相同的对象中选择包含这些术语之一的对象,并从DOM中删除包含这些术语的对象? 例如:

<section class="node_category">
  <h3>orange</h3>
</section>
<section class="node_category">
  <h3>apple</h3>
</section>
谢谢你的帮助

*为清晰起见进行了编辑

使用

比如说

    if ( $(".node_category h3:contains('orange')").size() > 0  )
    {
      //if there is any node_category which has h3 that contains orange
    }
演示

var searchTerms=[苹果,香蕉]; searchTerms.forEach函数值{ $.node_类别h3:包含“+值+”。删除; }; 橙色 苹果
如果您想要灵活的解决方案,也可以使用quicksearch:

举个小例子:

var qs=$'inputsearch'。快速搜索'table tbody td'; $append.onclick,function e{ $tr.append+$search.val+; qs.cache; }; /*范例表格*/ /*示例表*/ 测试单元 另一个测试单元 没有jQuery

var searchTerms = ["apple", "banana"],
    nodes = [].slice.call(document.querySelectorAll('h3')); // get all h3's and convert from nodelist to array

// loop through h3's
nodes.forEach(function(node) {
    if (searchTerms.indexOf(node.textContent) !== -1) {
        //only remove h3
        node.parentNode.removeChild(node);

        // remove section as well
        // node.parentNode.parentNode.removeChild(node.parentNode);
    }
});

演示:

您是只想删除h3,还是也要删除其容器?我想删除容器: