自己寫一個序列化form表單,表單中有複選框checkbox,單選框radio等
form表單中有複選框,單選框等
var serializeform = function (formid) {
var form = document.getElementById(formid);
var arr = {};
for (var i = 0; i < form.elements.length; i++) {
var feled = form.elements[i];
switch (feled.type) {
case undefined:
case 'button':
case 'file':
case 'reset':
case 'submit':
break;
case 'checkbox':
case 'radio':
if (!feled.checked) {
break;
}
default:
if (arr[feled.name]) {
arr[feled.name] = arr[feled.name] + ',' + feled.value;
} else {
arr[feled.name] = feled.value;
}
}
}
return arr
}
//把obj物件中的屬性新增到resultObj物件中
function pushProperty(obj, resultObj) {
for (var property in obj) {
var propertyName = property;
var propertyValue = obj[property];
resultObj[propertyName] = propertyValue;
}
}
var data;
var dataForm1 = serializeform("dataForm1");
pushProperty(dataForm1, data);
var dataForm2 = formser("dataForm2");
pushProperty(dataForm2, data);
本程式碼是自己寫的,專案中正用著,可能想的不全面,歡迎多提意見,我不斷完善,共同進步,謝謝