1

我见过两种选择方式input

$("input")

$(":input")

它们之间有什么区别吗?

4

7 回答 7

2

只需阅读文档。选择:input

选择所有inputtextareaselect元素button

input这是一个简单的类型选择器,只会匹配input元素。

于 2013-05-03T13:36:16.287 回答
2

$("input")只选择<input>元素。

$(":input")是一个jQuery 扩展,它将选择以下元素:<input>、和<select><textarea><button>

例子

于 2013-05-03T13:36:21.380 回答
0

第一个$('input')选择所有input元素,并且能够传递给document.querySelectorAll()(如果在主机浏览器中实现),这使得选择速度更快。

然而,后者$(':input')是一个特定于 jQuery 的选择器(因此不能传递给document.querySelectorAll()它以提高选择速度),它选择所有input相似的标签(因为需要更好的短语),input包括textareaselect.

参考:

于 2013-05-03T13:36:27.290 回答
0

$("input")将仅匹配<input>元素。

$(":input")另一方面,将匹配所有、<input>和元素。<textarea><select><button>

于 2013-05-03T13:36:46.913 回答
0

正如文档所说

:input 选择器基本上选择所有表单控件。

然而

$("input")只选择元素。

于 2013-05-03T13:36:47.180 回答
0

:inputis 选择器:

选择所有输入、文本区域、选择和按钮元素。

input 是一个简单的元素选择器,只会匹配输入元素。

于 2013-05-03T13:36:52.837 回答
0

$("input")一个非常一般的语法的具体情况。即一般情况下,$("x")选择所有x节点(<x></x>nodes)。因此,在这里,它为您提供了所有<input>节点。

$(':input')一个非常特殊的特殊选择器,设计用于选择<input><select><textarea><button>节点。:尽管还有其他这样的特殊选择器,但您不能用任何东西替换 之后的文本。

于 2013-05-03T13:38:17.450 回答