我可以从用户输入中获取属性名称和值
{{attribute}} and {{value}}
如何将这些添加到现有的json对象
$scope.items ={
name: peter,
age: 16,
{{attribute}}: {{value}}
}
答案 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>