我想检查div是否包含数组中的字符串。 我们可以说阵列是:
var vals = [“a”,“b”,“c”]
我想要隐藏所有不包含任何字符串的div。
答案 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();