长jQuery多选择器

时间:2013-12-07 16:07:55

标签: javascript jquery

现在我有一个非常长的jQuery选择器来定位许多不同的输入字段。

$('input[type="text"], input[type="number"], input[type="email"], input[type="tel"], textarea, select', ctx).each(function (){
    // do something
});

正如您所看到的,在文本编辑器中进行编辑时,此字符串太长,并且只能变长。我想知道是否有办法更好地组织它。

我尝试将其分解为不同的行,

$('input[type="text"],   
    input[type="number"], 
    input[type="email"], 
    input[type="tel"], 
    textarea, 
    select', ctx).each(function (){
});

但收到错误Unexpected token ILLEGAL

4 个答案:

答案 0 :(得分:5)

您的字符串文字未在换行符中正确终止

$('input[type="text"],\
    input[type="number"],\
    input[type="email"],\
    input[type="tel"],\
    textarea,\
    select', ctx).each(function (){
});

答案 1 :(得分:5)

为了完整起见,请考虑:

$([
    'input[type="text"]',
    'input[type="number"]',
    'input[type="email"]',
    'input[type="tel"]',
    'textarea',
    'select'
].join(', '), ctx).each( ... );

答案 2 :(得分:1)

有一个jQuery选择器

$(':input', ctx).each(function () {...

http://api.jquery.com/input-selector/

答案 3 :(得分:0)

我知道这是旧的,但我认为您也可以使用反引号 (``)

$(`input[type="text"],
    input[type="number"],
    input[type="email"],
    input[type="tel"],
    textarea,
    select`, ctx).each(function (){
});

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Template_literals

相关问题