我有一个有许多输入字段的表格。
当我用jQuery捕获提交表单事件时,是否可以用一个关联数组来获取该表单的所有输入字段?
$('#myForm').submit(function() {
// get all the inputs into an array.
var $inputs = $('#myForm :input');
// not sure if you wanted this, but I thought I'd add it.
// get an associative array of just the values.
var values = {};
$inputs.each(function() {
values[this.name] = $(this).val();
});
});
感谢Simon_Weaver的提示,这里有另一种方法,你可以用serializeArray
来做。
var values = {};
$.each($('#myForm').serializeArray(), function(i, field) {
values[field.name] = field.value;
});
注意,这个片段在"<选择多个> "元素上会失败。
在jQuery 1.3版本中,new HTML 5 form inputs似乎不能与serializeArray
一起工作。这在1.4以上版本中可以使用