2011-12-08 57 views
0

这是工作:jQuery的多重条件,而不是()

$('a:not(a[rel="no"])').click(function(event) { 
    /* code */ 
}); 

这简化版,工作:

$('a:not(a[rel="no"]), a:not(a[href="#tabs-1"]').click(function(event) { 
    /* code */ 
}); 

我需要有多个条件,但它简化版,工作。

如何执行多个条件?

+0

你还没有描述**它不工作**的意思!是否返回太多元素?有太少吗?期望是什么,结果与期望有什么不同? – RightSaidFred

+0

[这是一个例子](http://jsfiddle.net/nR8Zd/),它显示它完美的工作。请记住','是多重选择器。换句话说,它是一个OR。所以任何没有'rel =“no”** **或'**'没有'href =“#tabs-1”'的元素都会被选中。任何具有**两个**的''元素都不会被选中。 – RightSaidFred

+0

如果你想选择两个都没有的元素,你可以这样做:'$('a:not(a [rel =“no”]):not(a [href =“#tabs-1”]') ' – RightSaidFred

回答

0

我同意RightSaidFred它应该“工作”,如果它“不起作用”,那么我们需要更多的细节。 这就是说,如果由于某种原因它不适用于您认为的原因,那么您可以简单地将您的选择器拆分为逗号,并使用add()方法结合结果。