如何使用jquery的.each()过滤项目列表?

时间:2012-08-09 05:12:14

标签: jquery

使用.each()时,有没有办法过滤它检查的元素?

目前,这就是我所拥有的:给定一个元素列表,我只想检查输入。

$.each (Items, function(i, item) {
    if (item.is("input"))
        (do something)
});

3 个答案:

答案 0 :(得分:4)

是的,还有一个名为.filter()的方法 - 只需将其应用于Items即可在迭代前过滤该组:

$.each (Items.filter('input'), function(i, item) {
    // do something
});

写这个的另一种方法是直接在集合上调用.each(结果是相同的):

Items.filter('input').each(function(i, item) {
    // do something
});

答案 1 :(得分:1)

使用if语句即可,或者您可以使用.filter方法。

Items.filter("input").each(function() {
 // do something
});

答案 2 :(得分:0)

对于学习经验,关于你问题中的代码,这里是你如何去做的:

$.each(Items, function(i, item) {
    if($(this).is('input')) {
        // do something
    }
});​

演示:http://jsfiddle.net/g6Jsr/