我有一个JSON对象,我使用ng-repeat在html中显示。但是当我对html中的值进行更改并尝试再次打印时,它不会反映在实际对象中。
这是我的html代码段:
<tbody>
<tr ng-repeat="(key,value) in object">
<td>{{key}}</td>
<td><input type="text" ng-model="value">{{value}}</input></td>
</tr>
</tbody>
<a href="">
<button ng-click="printer()" class="btn btn-md btn-primary">Submit</button>
</a>
这是我的控制者:
MyService.getObject(objectName).then(function(response) {
console.log(response);
$scope.object = response;
});
$scope.printer = function() {
console.log("inside printer function");
console.log("object is ===" + JSON.stringify($scope.object));
}
这里MyService有一个http get,它返回一个我分配给$scope.object
的JSON对象。我可以毫无问题地查看对象,但是当我更改它并打印它时,我无法看到我所做的更改。
我的html中有一个Submit
按钮,用于调用printer
函数。更改页面中的值并单击“提交”后,我无法看到更改。
<td><input type="text" ng-model="value">{{value}}</input></td>
^^这里我打印了文本字段旁边的值。我对文本字段所做的任何更改也会更改值,这意味着它可以正常工作。但它没有在$scope
答案 0 :(得分:2)
我认为
<td><input type="text" ng-model="value">{{value}}</input></td>
应该是:
<td><input type="text" ng-model="object[key]">{{value}}</input></td>
模型值不存在于您的控制器中。