如何获取所有未选择的输入字段

时间:2012-04-19 10:16:26

标签: jquery

var $inputs = $('.add-item-form :input');

这会获取所有输入字段,但也会选择我不想要的选择字段。

e.g。

<select><option>example</option></select>

3 个答案:

答案 0 :(得分:2)

使用.not()省略选择框

var $inputs = $('.add-item-form :input').not("select")

或使用CSS样式:not选择器

var $inputs = $('.add-item-form :input:not(select)');

答案 1 :(得分:0)

:inputinputtextareabuttonselect元素的特定于jQuery的伪选择器。所以你可以这样做:

var $inputs = $('.add-item-form :input:not(select)');

...但你也可以专门打出你想要的东西:

var $inputs = $('.add-item-form input, .add-item-form textarea, .add-item-form button');

...这样做的好处是,如果浏览器支持querySelectorAll(并且几乎所有人都在标准模式下),jQuery就可以切换到本机处理(而:input特定于jQuery,因此浏览器的原生内容无法处理。)

或者,当然,如果您不想要textareabutton元素,那么这很简单:

var $inputs = $('.add-item-form input');

......再次,它具有尽可能由浏览器优化的东西处理的优势。

答案 2 :(得分:0)

如果您只想要input元素,请省略冒号:

$('.add-item-form input');

:input选择器选择所有input,textarea,select和button元素。如果您只想要输入元素,只需说出input

(如果你想要textarea或按钮元素,这个答案就不好了。)