我有一个基本的HTML表单,如下所示:
<html>
<form id="myform" action="something.cgi" method="post">
<select name="Container">
<option>container 1</option>
<option>container 2</option>
</select>
<input name="element1" type="text">
<!-- ... -->
</html>
我的目标是让用户进行一些配置并将其保存到配置文件中,我可以从另一个应用程序中读取它。我正在寻找一种方法来创建像这样的JSON字符串
{
"Container 1":
{
"Group 1":
{
"element1": "value1",
"element2": "value2"
}
"Group 2":
{
"element3": "value3",
"element4": "value4"
}
}
}
我读了这个POST data in JSON format,但是使用JSON.stringify方法返回类似于:
的内容{
"Container": "Container 1",
"element1": "value1",
"element2": "value2",
"element3": "value3",
"element4": "value4",
}
我想知道是否有标准方法可以做到这一点?感谢帮助!
答案 0 :(得分:3)
如果你想使用javascript,你需要明确地构建它,即:
var finalData = {
Container:{
'Group 1':{
element1:'value1',
element2:'value2'
},
'Group 2':{
element3:'value3',
element4:'value4'
}
}
};
JSON.stringify(finalData);
但是如果你需要它是动态的,你需要使用Constructors等相当棘手。由于你是基于HTML表单,我想项目列表是有限的,因此上面的对象文字设置应该适用于你想要的。