天天看點

jQuery ajax - serializeArray() 方法

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

繼續閱讀