我一直在为此寻找小时,并且没有找到答案。 在燃烧之前请仔细阅读整个问题! :)使用jQuery将复杂形式序列化为JSON对象
我有一个类似的形式:
<form id="sample">
<input name="name" type="text" value="name value" />
<input name="phone[0][type]" type="text" value="cell" />
<input name="phone[0][number]" type="text" value="000" />
<input name="phone[1][type]" type="text" value="home" />
<input name="phone[1][number]" type="text" value="111" />
</form>
而且需要能够将其序列化到这一点:
{
name: 'name value',
phone: [
{
type: 'cell',
number: '000'
},
{
type: 'home',
number: '111'
}
]
}
我曾尝试在SO包括jQuery的JSON最答案库和大多数人返回这样的事情:
{
'name': 'name value',
'phone[0][type]': 'cell',
'phone[0][number]': '000',
'phone[1][type]': 'home',
'phone[1][number]': '111',
}
这是东西我不能使用! :P
谢谢大家提前。
非常感谢Juliano! 这是完美的解决方案! :D – 2010-09-09 15:29:09
工程像魔术。对其进行一些修改,以处理您的列表形式为 var d = {name':'name value', 'phone [0] .type':'cell', 'phone [0] .number':'000', 'phone [1] .type':'home', 'phone [1] .number':'111', }; 结果在内部列表Key中有(。)in from,所以我在processExpression的第一个for循环后面添加了 )功能。 –
2016-02-05 16:13:02
_key_在函数中被声明了两次。 – robsch 2016-05-14 14:16:42