jQuery选择除一个ID之外的所有类

时间:2014-02-26 00:51:39

标签: javascript jquery

我需要选择某个类的所有div(jqx-slider),不包括一个ID(#str_prg) - 类似于:

$("div.jqx-slider :not(#str_prg)").each(function () {
.....
});

这是什么语法?

此外,如果我在循环中添加“if”条件,它会更快更有效吗 - 比如

if($(this).attr('id') ! = "str_prg"){

}

谢谢!

3 个答案:

答案 0 :(得分:3)

您正在使用类选择器和非选择器之间的后代选择器,这对您的要求无效

$("div.jqx-slider:not(#str_prg)")

当您说$("div.jqx-slider :not(#str_prg)")时,它会选择类jq-slider的所有元素的后代,但标识为str_prg

的元素除外

答案 1 :(得分:1)

尝试删除不必要的空格字符:

$("div.jqx-slider:not(#str_prg)")

答案 2 :(得分:1)

删除空格,因为它会导致您选择子项,而不是元素本身。

$("div.jqx-slider:not(#str_prg)").each(function() {
    .....
});

对于问题的第二部分,最好只使用CSS选择器而不是JS循环。