1

十分钟前问了这个问题,但意识到我使用了“父母”一词而不是“祖先”。我正在寻找指代具有特定祖先的类的东西。

如何选择没有特定类的父级的所有输入?

在这里,我只想获取没有父类的输入

$(document).ready(function() {

    $("div:not(.not-ancestor) > input[type='text']").css('color', '#FF1200');
});​

http://jsfiddle.net/MFtv3/3/

谢谢!

4

1 回答 1

5

您可以使用过滤器并使用最接近()来检查元素上方是否有父元素以及您要查找的类,如下所示:

$("div > input[type='text']").filter(function() {
    return !$(this).closest('.not-ancestor').length;
}).css('color', '#FF1200');

小提琴

编辑

要获取元素集合以供进一步使用:

var elems = $("div > input[type='text']").filter(function() {
                return !$(this).closest('.not-ancestor').length;
            });

elems.css('color', 'red');
elems.each(function(idx, elem) {
    $(elem).data('index', idx);
});
于 2012-11-27T20:31:07.753 回答