3

可能重复:
Jquery:选择中的选择

首先我从某个页面中选择 div 元素,代码如下:

var divs = $('div');

如何从 div 中选择带有 someClass 的 div。我尝试使用

divs.find('.someClass') or divs.find('div.someClass')

他们两个都不能工作。

如果我想完成这个任务,我应该怎么做?顺便说一句,我知道我可以使用 $('div.someClass')

4

3 回答 3

7

您可以使用以下.filter()方法:

var someClassDivs = divs.filter('.someClass');

这会将匹配的元素集减少为匹配选择器的元素(换句话说,那些具有“someClass”类名的元素)。

您当前的尝试.find()不起作用,因为它查看后代元素。您正在尝试减少由(有效)兄弟姐妹组成的匹配集。

于 2012-07-24T12:33:49.243 回答
0

使用过滤器功能

   var divs = $('div');
    divs.filter(function(){
    return $(this).hasClass("some_class");
                           })
于 2012-07-24T12:34:22.477 回答
0

你一开始不使用有什么原因$('div.someClass')吗?你需要一个包含所有 div 的数组来做其他事情吗?首先选择所有 div,然后过滤数组使用比简单地使用类名作为选择器更多的操作,并且可能会更慢。

我的建议是:

var divs = $('div.someClass')
于 2012-07-24T12:36:59.557 回答