mirror of https://github.com/hrfee/jfa-go
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
33 lines
969 B
33 lines
969 B
4 years ago
|
function serializeForm(id) {
|
||
|
var form = document.getElementById(id);
|
||
|
var formData = {};
|
||
|
for (var i = 0; i < form.elements.length; i++) {
|
||
|
var el = form.elements[i];
|
||
|
if (el.type != 'submit') {
|
||
|
var name = el.name;
|
||
|
if (name == '') {
|
||
|
name = el.id;
|
||
|
};
|
||
|
switch (el.type) {
|
||
|
case 'checkbox':
|
||
|
formData[name] = el.checked;
|
||
|
break;
|
||
|
case 'text':
|
||
|
case 'password':
|
||
|
case 'email':
|
||
|
case 'number':
|
||
|
formData[name] = el.value;
|
||
|
break;
|
||
|
case 'select-one':
|
||
|
let val = el.value;
|
||
|
if (!isNaN(val)) {
|
||
|
val = parseInt(val)
|
||
|
}
|
||
|
formData[name] = val;
|
||
|
break;
|
||
|
};
|
||
|
};
|
||
|
};
|
||
|
return formData;
|
||
|
};
|