div不包含Array中的任何字符串 - Jquery

时间:2014-04-23 20:36:31

标签: javascript jquery

我想检查div是否包含数组中的字符串。 我们可以说阵列是:

var vals = [“a”,“b”,“c”]

我想要隐藏所有不包含任何字符串的div。

3 个答案:

答案 0 :(得分:2)

        <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>

答案 1 :(得分:1)

DEMO http://jsfiddle.net/GS8QD/5/

var vals = ["a", "b", "c"];
var $divs = $('.container div');
$divs.each(function () {
    var $currDiv = $(this);
    $.each(vals, function (index, value) {
        if ($currDiv.is(':contains(' + value + ')') && $currDiv.is(":visible")) {
            $currDiv.hide();
        }
    });
});

说明:遍历div和&amp;集合中的每个div。在循环内部有另一个循环,循环遍历数组中的每个值。现在检查div是否包含值&amp;然后隐藏它。

答案 2 :(得分:0)

如果您只希望显示包含a,b或c的div,则可以执行此操作 -

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

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

http://jsfiddle.net/jayblanchard/9SJ2h/