表单序列化
function serialize(form){ var attr = []; for(var i=0;i<form.elements.length;i++){ var obj = form.elements[i]; switch(obj.type){ case undefined: case 'button': case 'submit': case 'reset': case 'file': break; case 'radio': case 'checkbox': if(!obj.selected)break; case 'select-one': case 'select-multiple': for(var j=0;j<obj.options.length;j++){ var option = obj.options[j]; if(option.selected){ var optValue = ''; if(option.hasAttribute){ optValue = option.hasAttribute('value') ? option.value : option.text; }else{ optValue = option.attributes('value').specified ? option.value : option.text; }; attr.push(obj.name+'='+optValue); }; }; break; default: attr.push(obj.name+'='+obj.value); }; }; return attr; };
传入参数为原生form表单对象
返回出来的是数组