Javascript div不包含数组中的任何字符串-Jquery

Javascript div不包含数组中的任何字符串-Jquery,javascript,jquery,Javascript,Jquery,我想检查div是否不包含数组中的字符串。 假设数组是: var VAL=[“a”、“b”、“c”] 我想隐藏所有不包含这些字符串的div。 <script type="text/javascript"> var vals = ["a","b","c"]; $("div").hide(); $(document).ready(function () { for (index = 0;

我想检查div是否不包含数组中的字符串。 假设数组是:

var VAL=[“a”、“b”、“c”]

我想隐藏所有不包含这些字符串的div。


        <script type="text/javascript">
          var vals = ["a","b","c"];
           $("div").hide();
          $(document).ready(function () {
             for (index = 0; index < vals.length; ++index) {    
                $("div").hide();     
                $("div p:contains(vals[index])").parent('div').show();
             }   
          });
        </script>
var VAL=[“a”、“b”、“c”]; $(“div”).hide(); $(文档).ready(函数(){ 对于(索引=0;索引
演示


说明:循环遍历div集合中的每个div&循环中还有另一个循环遍历数组中的每个值。现在检查div是否包含该值,然后将其隐藏。

如果只希望div显示包含a、b或c的值,可以执行以下操作-

var vals = ["a", "b", "c"];

$('div:not(:contains('+vals[0]+'),:contains('+vals[1]+'),:contains('+vals[2]+'))').hide();

到目前为止,您尝试了什么?我只有一种方法可以隐藏所有不包含特定字符串的div:$('.provider\u body:not(:contains(“a string”))))))嗯…也许您会想查看$.each()甚至是for循环。我已经考虑过使用each和for,但是我想也许有一种方法可以用jquery单行语句来显示有段落,OP想要隐藏那些不在索引中的段落。我很抱歉。可以在不使用段落p$(“div:contains(vals[index]))的情况下使用;我不知道数组中的项数,这只是一个例子这是与我所做的最相似的答案:$(“.provider_body”).each(function(){var str=$(this.html();var a=values.some(function(itm){return(str.indexOf(itm)!=-1)};if(a==false)$(this.hide();else$(this).show();});
var vals = ["a", "b", "c"];

$('div:not(:contains('+vals[0]+'),:contains('+vals[1]+'),:contains('+vals[2]+'))').hide();