var $inputs = $('.add-item-form :input');
这会获取所有输入字段,但也会选择我不想要的选择字段。
例如
<select><option>example</option></select>
var $inputs = $('.add-item-form :input');
这会获取所有输入字段,但也会选择我不想要的选择字段。
例如
<select><option>example</option></select>
使用 a.not()
省略选择框
var $inputs = $('.add-item-form :input').not("select")
或者使用 CSS 样式:not
选择器
var $inputs = $('.add-item-form :input:not(select)');
:input
是一个 jQuery 特定的伪选择器,用于input
、textarea
、button
和select
元素。所以你可以这样做:
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,所以不能由浏览器的本地东西处理)。
或者,当然,如果你不想要textarea
和button
元素,那真的很简单:
var $inputs = $('.add-item-form input');
...再次,这具有由浏览器优化的东西在可能的情况下处理的优势。
如果您只想要input
元素,请省略冒号:
$('.add-item-form input');
选择器:input
选择所有输入、文本区域、选择和按钮元素。如果您只想要输入元素,只需说input
.
(如果您确实需要 textarea 或 button 元素,则此答案不好。)