角度添加/更新用户输入的json对象属性和值

时间:2016-09-12 04:14:31

标签: javascript angularjs json object

我可以从用户输入中获取属性名称和值

{{attribute}} and {{value}}

如何将这些添加到现有的json对象

$scope.items ={
 name: peter,
 age: 16,
 {{attribute}}: {{value}}
}

2 个答案:

答案 0 :(得分:1)

您可以使用括号表示法。

$scope.items[$scope.attribute] = $scope.value;

答案 1 :(得分:0)

这里是您的问题陈述的plunker,使用ng-change当用户更改输入字段或表单中的任何内容时,我已调用函数来动态创建JSON对象。 下面是我们创建JSON对象的控制器外观

var myApp = angular.module('Test', []);
myApp.controller('MainCtrl', ['$scope', function($scope) {

  $scope.input={};
  $scope.items={};
  $scope.createObj = function(){
    $scope.items['name'] = $scope.input.name;
     $scope.items['age'] = $scope.input.age;
  };

}]);

HTML将如下所示:

<body ng-app="Test" ng-controller="MainCtrl">
    <h5>Name:</h5>
    <input type="text" ng-model="input.name" ng-change="createObj()"/>
    <h5>Age :</h5>
    <input type="text" ng-model="input.age" ng-change="createObj()"/>
    <pre>{{items}}</pre>
  </body>