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 字元串。需要使用插件或者第三方庫進行字元串化操作。