Jquery 选择器输入[type=text]')

2022-08-30 05:24:58

我写了一个代码,基本上选择所有元素,如下所示:input type=text

$('.sys input[type=text]').each(function () {}

如何将其更改为选择或?input[type=text]select


答案 1

使用普通的 css 选择器:

$('.sys input[type=text], .sys select').each(function() {...})

如果你不喜欢重复:

$('.sys').find('input[type=text],select').each(function() {...})

或者更简洁地说,传入参数:context

$('input[type=text],select', '.sys').each(function() {...})

注意:内部会将上述内容转换为等效内容jQueryfind()

http://api.jquery.com/jQuery/

在内部,选择器上下文是使用 .find() 方法实现的,因此 $('span', this) 等效于 $(this).find('span')。

我个人认为第一种选择是最可读:),你的看法


答案 2
$('.sys').children('input[type=text], select').each(function () { ... });

编辑:实际上上面的代码等效于子选择器,如果你想要后代选择(),你需要使用@NiftyDude给出的选项。.sys > input[type=text].sys input[type=text]

更多信息: