serializeArray() 方法序列化表单元素(类似 .serialize() 方法),返回 JSON 数据结构数据。
返回的 JSON 对象是由一个对象数组组成的,其中每个对象包含一个或两个名值对 —— name 参数和 value 参数(如果 value 不为空的话)。举例来说:
[
{name: 'firstname', value: 'Hello'},
{name: 'lastname', value: 'World'},
{name: 'alias'}, // 值为空
]
实例1:
输出以数组形式序列化表单值的结果:$("button").click(function(){
x=$("form").serializeArray();
$.each(x, function(i, field){
$("#results").append(field.name + ":" + field.value + " ");
});
});
实例2:
直接返回表单元素的name/value组成的json对象
function serializeObject(form) {
var o = {};
$.each(form.serializeArray(), function(index){
o[this['name']] = this['value'];
});
return o;
}
serializeObject($("#form1"));
注意:此方法返回的是 JSON 对象而非 JSON 字符串。需要使用插件或者第三方库进行字符串化操作。