当我使用$("input[type=text]")
时,我绝对意味着所有文本框,但它只返回已为其设置类型的输入。
例如:
<input name="text1" />
<input name="text2' type="text"/>
text1
不包括在内。
如何设置或不设置所有文本输入?
答案 0 :(得分:5)
选择type = text的那些,以及没有type属性的那些。
$("input[type=text],input:not([type])")
答案 1 :(得分:3)
$('input:text')
From the official documentation:
从jQuery 1.5.2开始,:text选择没有的输入元素 指定的类型属性(在这种情况下暗示了type =“text”)。
答案 2 :(得分:2)
您可以使用filter
方法:
$("input").filter(function(){
return this.type === 'text'
})
答案 3 :(得分:0)
如果你输入的所有名字都包含'text'(否则你怎么理解它是一个文本框?),你可以试试。
$('input[name*="text"]');
答案 4 :(得分:0)
如果你没有设置类型,那么[type =“text”]将排除没有类型的那些。
如果选择$('input'),无论类型如何,您都将获得所有输入,因此可以是文本字段。但它仍然适用于每个输入字段。
如果您没有设置类型,它将不会显示为type = text,但它将如此呈现。这意味着你不能选择JUST [type =“text”],但你总是可以排除其他人,但如下所示:
$('input[type=text]','input:not([type])')
不确定这是否有帮助。