如何在jquery中使用或

如何在jquery中使用或,jquery,Jquery,首先,我要感谢所有看到这一点的人,并特别感谢那些回答这一问题的人 今天,我测试了这段代码,但它不起作用,所以我只想知道该如何编写这段代码。 一行中有多个“或” $("input[name='ABC']or[name='DEF']or[name='GHI']or[name='JKL']").click(function (){ //do something }); 或者甚至为它放其他东西,比如 $("input[name='ABC'][name='DEF'][name='GHI'][n

首先,我要感谢所有看到这一点的人,并特别感谢那些回答这一问题的人

今天,我测试了这段代码,但它不起作用,所以我只想知道该如何编写这段代码。 一行中有多个“或”

$("input[name='ABC']or[name='DEF']or[name='GHI']or[name='JKL']").click(function (){ 
    //do something
});
或者甚至为它放其他东西,比如

$("input[name='ABC'][name='DEF'][name='GHI'][name='JKL']").click(function (){ 
    //do something
}else{
    //do something else
});

我知道这两个代码都是无效的,所以可以这样编码吗?到目前为止,我一个接一个地对其进行编码,因此我的编码非常长。

您可以使用多选择器

您可以使用多选择器

您只需使用,或者在它们之间放置

用这个

$("input[name='ABC'],[name='DEF'],[name='GHI'],[name='JKL']").click(function (){ 
//do something
});

您可以简单地使用或在它们之间放置

用这个

$("input[name='ABC'],[name='DEF'],[name='GHI'],[name='JKL']").click(function (){ 
//do something
});

使用“逗号”分隔元素,如jhonraymos建议的

我建议您为所有这些元素添加一个

<input type="text" name="ABC" class="special" />
<input type="text" name="DEF" class="special" />
<input type="text" name="GHI" class="special" />
<input type="button" name="JKL" class="special" />
...

使用“逗号”分隔元素,如jhonraymos建议的

我建议您为所有这些元素添加一个

<input type="text" name="ABC" class="special" />
<input type="text" name="DEF" class="special" />
<input type="text" name="GHI" class="special" />
<input type="button" name="JKL" class="special" />
...

如果您想要更定制的解决方案,您可以使用以下内容:

$("input[name]").filter(function() { return this.getAttribute('name').search(/^(ABC|DEF)$/) > 0;});
然后可以根据需要将其封装在函数中进行抽象,并使客户机代码更具可读性

我的建议是:

var attrPattern = function(attrName, pattern) {
  return function() {
    return this.getAttribute(attrName).search(pattern) > 0;
  }
}
然后你可以打电话给他

$("input[name"]).filter(attrPattern("name", pattern));

如果您想要更定制的解决方案,您可以使用以下内容:

$("input[name]").filter(function() { return this.getAttribute('name').search(/^(ABC|DEF)$/) > 0;});
然后可以根据需要将其封装在函数中进行抽象,并使客户机代码更具可读性

我的建议是:

var attrPattern = function(attrName, pattern) {
  return function() {
    return this.getAttribute(attrName).search(pattern) > 0;
  }
}
然后你可以打电话给他

$("input[name"]).filter(attrPattern("name", pattern));

我知道这一点,但幸运的是,我所有的输入都是随机生成的,所以我不能为类指定它。无论如何,感谢您仍然可以在生成这些元素时为它们添加一个类,然后使用live方法$(document);我知道这一点,但幸运的是,我所有的输入都是随机生成的,所以我不能为类指定它。无论如何,感谢您仍然可以在生成这些元素时为它们添加一个类,然后使用live方法$(document);好的,我稍后会试试comman,永远不要考虑这种方式。谢谢,我以后会试试comman的,别想这样。谢谢