jQuery选择器选择所有类型的文本框

jQuery选择器选择所有类型的文本框,jquery,Jquery,有没有一种简单的方法可以选择所有类型的文本框 例如, 我不介意密码或文本区 我有一个代码,可以选择所有具有自定义属性(“特殊”)的文本输入,它可以被缩短吗 $("input[type='text'][special],input[type='email'][special],input[type='url'][special],input[type='password'][special]") 您可以使用: $(':input[special]') 虽然这也会抓住复选框等 报告是否涵盖您感兴

有没有一种简单的方法可以选择所有类型的文本框

例如,

我不介意密码或文本区

我有一个代码,可以选择所有具有自定义属性(“特殊”)的文本输入,它可以被缩短吗

$("input[type='text'][special],input[type='email'][special],input[type='url'][special],input[type='password'][special]")
您可以使用:

$(':input[special]')
虽然这也会抓住复选框等

报告是否涵盖您感兴趣的案例

$(":input[special]")
文档:

:输入选择器
基本上选择所有表单控件

附加说明:
由于
:input
是jQuery扩展,而不是CSS规范的一部分,因此使用
:input
的查询无法利用本机DOM querySelectorAll()方法提供的性能提升。要在使用
时获得最佳性能:输入
选择元素,请首先使用纯CSS选择器选择元素,然后使用

您可以使用
$(“:input[special]”
$(“[special]”)。过滤器(“:input”)

但我认为这更快:

$("input").filter(function() {
    return this.type !== "hidden" && this.getAttribute("special");
});
或者不带
收音机
复选框

$("input").filter(function() {
    return this.type !== "hidden" && this.type !== "radio" && this.type !== "checkbox" && this.getAttribute("special");
});
请参阅文档以了解

:输入选择器
基本上选择所有表单控件

附加说明:
由于
:input
是jQuery扩展,而不是CSS规范的一部分,因此使用
:input
的查询无法利用本机DOM querySelectorAll()方法提供的性能提升。要在使用
时获得最佳性能:输入
选择元素,请首先使用纯CSS选择器选择元素,然后使用


我当然不明白,但是如果你可以应用一个特殊属性,为什么不应用一个类呢?只是为了缩短它,例如,而不仅仅是$(“input[special]”)?但这也会选择复选框隐藏等
$("input").filter(function() {
    return this.type !== "hidden" && this.type !== "radio" && this.type !== "checkbox" && this.getAttribute("special");
});