jquery 将form中的元素序列化成对象;序列化对象填充到指定input

这是一正一反的两种方法,在行编辑的情况下,非常实用。

表单到对象时,设置其Name与之匹配;

对象到表单时,设置input的ID与返回的序列化后的对象名匹配。


正推, 表单到对象:

sy.serializeObject = function(form) {
	var o = {};
	$.each(form.serializeArray(), function(index) {
		if (o[this['name']]) {
			o[this['name']] = o[this['name']] + "," + this['value'];
		} else {
			o[this['name']] = this['value'];
		}
	});
	return o;
};




反推,对象填充到input

function setValue(obj){  
    // 开始遍历   
    for(var p in obj){      
       // 方法  
       console.info(obj);
       if(typeof(obj[p])=="function"){      
           // obj[p]();     
        }else{    
        	$("#"+p).val(obj[p]);
            // p 为属性名称,obj[p]为对应属性的值     
              
        }      
    }      
    
}



你可能感兴趣的:(jquery 将form中的元素序列化成对象;序列化对象填充到指定input)