包含特定值的 jQuery 过滤器类

标签 jquery

在 jQuery 中,如何过滤包含特定类的所有内容?

HTML:

<div class='item 10'>10</div>
<div class='item 20'>20</div>
<div class='item 30'>30</div>
<div class='item 40'>40</div>
<div class='not-an-item 50'>50</div>

我尝试过:

var classList = $(".item").attr('class').split(/\s+/);
if(classList[1] == '10' || lassList[1] == '30'){
    $(".item").hide();

}

正确输出:

<div class='item 20'>20</div>
<div class='item 40'>40</div>
<div class='not-an-item 50'>50</div>

最佳答案

您可以使用.has()方法或 .not()减少元素集的方法。使用 .has() 可以保留与特定选择器匹配的所有元素,而 .not() 则保留与选择器不匹配的所有元素。

要进行更高级的过滤,您可以使用 .filter()方法。

如果我正确理解您的问题,您可以将 .filter() 与过滤功能一起使用。像这样的事情:

$(".item").filter(function() {
   return !($(this).hasClass("10") || $(this).hasClass("30"));
}).hide();

关于包含特定值的 jQuery 过滤器类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12129345/

相关文章:

javascript - Chrome 扩展 - 加载页面时触发警报

jquery - -webkit-转换 : No effect and background turns white

jquery - 更改数据角色 ="header"中 .ui-title 的宽度

javascript - 我可以在调试时只输入 "step over"jQuery 代码吗?

javascript - 无法使用jspdf将html导出为pdf

javascript - 从数组javascript中检索元素

javascript - 尝试访问 json 数据时未定义 (ajax)

javascript - 当div底部到达顶部时JQuery添加类

jquery - 检查两个 div 是否包含内容,如果没有则向其容器 div 添加类

javascript - 使用 jQuery 在加载时设置 CSS 属性