<html>
<head></head>
<body>
<form name="abc" action="#" method="post">
Name: <input type="text" name="name"><br>
Age : <input type="text" age="name"><br>
<input type="submit"><br>
</form>
</body>
</html>
任何人都可以这样编写HTML代码,当我提交此表单时,表单数据将以JSON格式提交。
答案 0 :(得分:3)
纯JavaScript解决方案将是:
baz
答案 1 :(得分:0)
尝试使用name="age"
替换age="name"
input type="text"
,.serializeArray()
,$.post()
$("form").submit(function(e) {
e.preventDefault();
var data = $(this).serializeArray();
console.log(data);
// $.post("/path/to/server", data);
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js">
</script>
<form name="abc" action="#" method="post">
Name:
<input type="text" name="name">
<br>Age :
<input type="text" name="age">
<br>
<input type="submit">
<br>
</form>
&#13;
答案 2 :(得分:0)
检查此功能
var formDataToObject = function (formElm) {
var formObj = new FormData(formElm),
result = {},
values = formObj.values(),
keys = formObj.keys(),
key;
while (!(key = keys.next()).done) {
result[key.value] = values.next().value;
}
return result;
};
这里有两点说明:
1)不支持多个选择选项,它将返回最后选择的选项!!
2)当完成的next()返回对象等于 true 时,循环中断, 但此对象还包含表单中最后一个元素的键 在大多数情况下,提交按钮,所以如果表单中没有一个,则最后一个元素将被排除,易于修复。