Jquery $(:text)和$(输入[type =" text"])

时间:2014-04-21 09:36:51

标签: javascript jquery

$(:text)$(input[type="text"]) Jquery 选择器之间是否有任何区别。

3 个答案:

答案 0 :(得分:3)

从jQuery 1.5.2开始,:text选择没有指定type属性的输入元素(在这种情况下暗示type =“text”)。

$(“:text”)和$(“[type = text]”)之间的行为差​​异如下所示:

$( "<input>" ).is( "[type=text]" ); // false
$( "<input>" ).is( ":text" ); // true

附加说明:

因为:text是jQuery扩展而不是CSS规范的一部分,使用:text的查询无法利用本机DOM querySelectorAll()方法提供的性能提升。为了在现代浏览器中获得更好的性能,请改用[type =“text”]。 https://api.jquery.com/text-selector/

答案 1 :(得分:0)

来自Jquery api

  

$(&#34;:text&#34;)相当于$(&#34; *:text&#34;)。

等同于$('input[type="text"]') $("input:text")

答案 2 :(得分:0)

$(input[type="text"])将选择具有指定类型的所有输入标签

$(:text)将选择具有指定或未定义类型的所有输入标记

<input type="text" name="text1" value="abc" />

<input name="text2" value="xyz" />

$(input[type="text"])将仅选择第一个输入标记

$(:text)将选择两个输入法

检查js fiddle demo