如何将标准HTML表单转换为包含所有数据的JSON表示? [英] How do I convert a standard HTML form to JSON representation that includes all data?
本文介绍了如何将标准HTML表单转换为包含所有数据的JSON表示?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有一个简单的HTML表单:
I have a simple HTML form:
<form id="formid1" action="#" method="post">
<table>
<tr><td> First name: </td><td><input type="text" name="firstname" id="firstname"/> </td></tr>
<tr><td> Last name: </td><td><input type="text" name="lastname" id="lastname"/> </td></tr>
<tr><td> Address: </td><td> <input type="text" name="address" id="address"/> </td></tr>
<tr><td> Zip: </td><td> <input type="text" name="zip" id="zip"/> </td></tr>
<tr><td> Sex: </td><td> <input type="radio" name="sex" value="male" /> Male<br />
<input type="radio" name="sex" value="female" /> Female<br /></td></tr>
<tr><td> </td><td> <input type="submit" value="Submit" /></td></tr>
</table>
</form>
我需要获取Form元素的JSON表示,包括id,value,type,form action,表格ID等。
I need to get a JSON representation of the Form elements including id, value, type, form action, form id etc.
我尝试使用以下代码但我没有得到我想要的东西:
I tried playing with the following code but I am not getting what I am looking for:
<script>
$(document).ready(function(){
var encoded = $.toJSON($('#formid1'));
$("#formid1").submit(function() {
$.colorbox({html:'<p>Form Converted to JSON Data: <br /><br /><br /><br /><br /></p>'+ encoded });
return false;
});
});
</script>
我得到:
{"length":1,"0":{"firstname":{},"lastname":{},"address":{},"zip":{},"sex":{"0":{},"1":{}},"6":{}},"context":{"jQuery16108216209608688556":1},"selector":"#formid1"}
关闭
推荐答案
试试这个:
$('#formid1').serializeArray().reduce(function(obj, v) { obj[v.name] = v.value; return obj; }, { });
这篇关于如何将标准HTML表单转换为包含所有数据的JSON表示?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文