将表单数据转换为JSON字符串 [英] Covert form data to JSON string
本文介绍了将表单数据转换为JSON字符串的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
<form name = 'test' >
<input type='text' name = 'login'>
<input type='email' name = 'email'>
</form>
如果我使用 JSON.serialize($(form))。serializeArray( );
我得到 [{name:login,value:a value},{name:电子邮件,值:电子邮件}]
我需要 {登录:登录,电子邮件:电子邮件 }
即可。怎么做??
If I use JSON.serialize($(form)).serializeArray();
I get [{"name":"login","value":"a value"},{"name":"email","value":"a email"}]
while I need {"login":"a login","email":"a email"}
. How to do that??
推荐答案
您可以将< form>
传递给 FormData()
,迭代 FormData
实例的键值对,将每个键和值设置为对象属性和值
You can pass the <form>
to FormData()
, iterate key, value pairs of FormData
instance, set each key and value to an object property and value
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>
这篇关于将表单数据转换为JSON字符串的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文