希望我能正确解释这一点。我有一个表单,它可以从分组的表单元素转换为嵌套的 json,例如
<input type="checkbox" name="faults[slats][]" value="cracked"/>
<input type="checkbox" name="faults[slats][]" value="broken"/>
<input type="text" name="partsRequired[0][partDescription]"/>
<input type="text" name="partsRequired[0][size][]"/>
<input type="text" name="partsRequired[0][size][]"/>
<input type="text" name="partsRequired[1][partDescription]"/>
<input type="text" name="partsRequired[1][size][]"/>
<input type="text" name="partsRequired[1][size][]"/>
解析后的 json 如下所示:
{
faults : {
"slats": [
"cracked",
"broken"
]
},
partsRequired: [
{
"partDescription": "Fabric Ochre",
"size": ["1x5m", "1m", "2m"],
"colour": "Ochre",
"quantity": "1"
},
{
"partDescription": "",
"size": "",
"colour": "",
"quantity": ""
}
]
}
我需要能够遍历这些数据并重新填充表单。我有一个函数可以重新创建变量名称和值,这种方式允许我为第一组数据“故障”执行此操作。我遇到的问题是,我无法弄清楚如何在两者结合的第二个场景部分中做到这一点。
见小提琴:http: //jsfiddle.net/JyfA2/1/。您可以看到,如果将数组传递给数组函数,它会创建正确的数据,但传递 partsRequired 会保存 partsRequired[0][size][] 的键整数,这给了我错误的名称来查找和填充表单上的元素.
我怎样才能解决这个问题?