如何组合jquery选择器属性

如何组合jquery选择器属性,jquery,jquery-selectors,Jquery,Jquery Selectors,如何在jquery中组合一些选择器来拒绝函数对某些字段的响应 样本: 我的自动完成。当任何输入字段获得大于3个符号的值时,将调用搜索函数 为了排除一些输入,我使用这个 $('#customerdata input[name!="c_ldate"]').bind('keyup',function(){... 这对一个领域来说很好。不,我有第二个输入,我的函数不应该对其作出反应 我想做类似的事情,比如 $('#customerdata input[name!="c_ldate"], input[n

如何在jquery中组合一些选择器来拒绝函数对某些字段的响应

样本:

我的自动完成。当任何输入字段获得大于3个符号的值时,将调用搜索函数

为了排除一些输入,我使用这个

$('#customerdata input[name!="c_ldate"]').bind('keyup',function(){...
这对一个领域来说很好。不,我有第二个输入,我的函数不应该对其作出反应

我想做类似的事情,比如

$('#customerdata input[name!="c_ldate"], input[name!="c_ldate2"]')...
但这不起作用

有没有一种简单的方法可以选择一个属性(名称)并说“如果值为bla bla,请不要使用此”简称
name=“bla bla或foo bar”

很难再加上一把小提琴。。。我的小提琴根本不起作用。。。即使在我使用工作代码的时候有线

简单地说:

我在一个div中有10个输入,我想按名称排除其中的两个

编辑

找到了我的解决办法

$('#customerdata input').not('[name!="c_ldate"]').not('[name!="c_ldate_text"]')
//or similar and bit shorter
$('#customerdata input').not('[name!="c_ldate"],[name!="c_ldate_text"]')
//shortest for me in my case
$('#customerdata input').not('[name^="c_ldate"]')
//what actually just checks if name attribte starts with... so this is fine for me as well

向所有输入添加一个类?然后 $(“.class”).bind。。。
如果我正确理解了您的问题。

从逻辑上讲,两个CSS选择器之间的逗号运算符类似于逻辑OR,但您的选择器是通过排除方式工作的。这样:如果(x!=3 | | x!=4)。但该表达式不会排除x的任何值。我用jQuery尝试了这一点,我碰巧用了一种方便的形式:

   $("body").append("<div id='foo'><input name='fred'><input name='george'><input name='harry'>");

因此,最后一个选择器表达式不排除三个输入中的任何一个。

@t.J.Crowder更好?不清楚您想要什么。我建议在问题中添加一个带有堆栈片段的runnable,指出您需要处理和不需要处理的字段,以及如何区分它们。我怀疑它与此相关。(从jQuery 3.0开始,.bind()已被弃用。自jQuery 1.7以来,它被用于将事件处理程序附加到文档的.on()方法所取代,因此已不鼓励使用它。)@ZakariaAcharki很高兴知道这一点,但这对我来说并不重要,因为这是一个较旧的项目,更新jquery会引起很多问题,所以有时您必须使用较旧的版本。这也是一个非常大的代码,不能很容易地更新:)找到我的解决方案<代码>$(“#customerdata input”)。不是(“[name!=“c#ldate”]”)。不是(“[name!=“c#ldate”]”)我的速记(“#customerdata input”)。不是(“[name^=“c#ldate”]”)你可以选择有名字的东西,不需要类。但是正如你在我的帖子中看到的,我在一个div中的所有输入上都使用了这个。在我的例子中#customrdata,我只想按名称排除2个输入。我修改了我的示例,以便更接近您的问题。这有用吗?
$("#foo input[name!=fred]");
[input, input]
$("#foo input[name!=george]");
[input, input]
$("#foo input[name!=george], #foo input[name!=fred]");
[input, input, input]