<form name = 'test' >
<input type='text' name = 'login'>
<input type='email' name = 'email'>
</form>
如果我使用JSON.serialize($(form)).serializeArray();
我得到 [{"name":"login","value":"a value"},{"name":"email","value":"a email"}]
当我需要{"login":"登录","email":"电子邮件"}
。怎么做??
最佳答案
您可以通过<form>
至FormData()
,迭代 FormData
的键、值对实例,将每个键和值设置为对象属性和值
let form = document.forms["test"];
let fd = new FormData(form);
let data = {};
for (let [key, prop] of fd) {
data[key] = prop;
}
data = JSON.stringify(data, null, 2);
console.log(data);
<form name='test'>
<input type='text' name='login' value="a login">
<input type='email' name='email' value="a email">
</form>
关于javascript - 将表单数据转换为 JSON 字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45305680/