如何获取给定表单详细信息的嵌套json对象

How to get nested json object for given form details?

本文关键字:详细信息 表单 嵌套 对象 json 何获取 获取      更新时间:2024-01-29

我正在尝试获取json对象,我已经尝试过了,但它就像是一个普通的json格式,但我需要它像nested json格式一样,就像我在fiddle中解释的那样。我怎样才能做到这一点?请帮助我,并提前表示感谢。

用替换表单html

<form action="" method="post" id="formid" name="testForm">
    First Name:
    <input type="text" ng-model="formData.testing.Fname" maxlength="50" size="12" /><br/>
    <br/> Last Name:
    <input type="text" ng-model="formData.testing.Lname" maxlength="50" size="12" /><br/>
    <br/>
     Middle Name:
    <input type="text" ng-model="formData.testing.Mname" maxlength="50" size="12" /><br/>
    <br/> Education:
    <br/>
    <select ng-model="formData.testing.Education">
      <option value="HighSchool">HighSchool</option>
      <option value="College">College</option>
    </select>
    <br/>
    <br/> Age:
    <input type="text" ng-model="formData.testing.Age" maxlength="2" size="10" /><br/>
    <br/> University:
    <br/>
    <select ng-model="formData.University">
      <option value="ABC">ABC</option>
      <option value="DEF">DEF</option>
    </select>
    <br/>
    <br/>
    Companies:<br/>
<select ng-model="formData.companies">
<option value="X">X</option>
<option value="Y">Y</option>
<option value="Z">Z</option></select><br/>
    <p>
      <input type="submit" ng-click="serialize($event)" />
    </p>
  </form>

这意味着您想要在测试节点中的数据在绑定时将其放在相同的格式中,即用ng-model="formData.testing.Fname" 替换ng-model="formData.Fname"

$scope.serialize = function($event){
var testing = [
    {'Fname':$scope.formData.Fname},
  {'Lname':$scope.formData.Lname},
  {'Mname':$scope.formData.Mname},
  {'Education':$scope.formData.Education},
  {'Age':$scope.formData.Age},
];
$scope.formData = {
'testing' : testing, 
'University' : $scope.formData.University,
'Companies' : $scope.formData.companies,
};
console.log($scope.formData)
alert(JSON.stringify($scope.formData))
console.log(JSON.stringify($scope.formData));
$event.preventDefault()

}

使用此代码。