我有3个数据。我现在想要的是使用一个按钮更新它们但我不知道如何启动或如何获取每个数据的id。更新数据时,它应警告更新的值。
对此有何建议?感谢
angular.module('myApp', [])
.controller('bookCtrl', function ($scope) {
$scope.book = {
name: 'Session Invites',
friends: [{
'id': 1,
'name': 'raju'
}, {
'id': 2,
'name': 'radha'
}, {
'id': 3,
'name': 'luttappi'
}]
};
$scope.update = function (friend) {
alert(friend.name);
};
});
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>
<div ng-app="myApp">
<div ng-controller="bookCtrl">
<div ng-repeat="friend in book.friends">
<input type="text" ng-model="friend.name" />
</div>
<input type="button" id="btn" name="btn" value="update" ng-click="update(friend)" />
</div>
</div>
答案 0 :(得分:1)
您可以这样做:
在forEach
上执行book.friends
并发送book.friends
(在html中修改)
angular.module('myApp', [])
.controller('bookCtrl', function ($scope) {
$scope.book = {
name: 'Session Invites',
friends: [{
'id': 1,
'name': 'raju'
}, {
'id': 2,
'name': 'radha'
}, {
'id': 3,
'name': 'luttappi'
}]
};
$scope.update = function (friends) {
$scope.book.friends.forEach(function(v, i){
v.name = friends[i].name;
});
console.log($scope.book.friends);
};
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>
<div ng-app="myApp">
<div ng-controller="bookCtrl">
<div ng-repeat="friend in book.friends">
<input type="text" ng-model="friend.name" />
</div>
<input type="button" id="btn" name="btn" value="update" ng-click="update(book.friends)" />
</div>
</div>
&#13;
答案 1 :(得分:0)
这不是纯粹的角度方式。但完成工作。
您需要遍历对象并将它们全部设置为给定名称。
$ scope.update = function(selectedfriend){ angular.forEach($ scope.friends,function(friend,index){
friend.name = selectedfriend.name
}); }
答案 2 :(得分:0)
<div ng-controller="bookCtrl">
<div ng-repeat="friend in book.friends">
<input type="text" ng-model="friend.name" />
</div>
<input type="button" id="btn" name="btn" value="update" ng-click="update(friend)" />
</div>
您正在friend
中传递update
。但我认为这是不确定的。通过book.friends
并找到更新的结果
<input type="button" id="btn" name="btn" value="update" ng-click="update(book.friends)" />
$scope.update = function(friends) {
for (var i = 0; i < friends.length; i++) {
var friendId = friends[i].id;
}
alert(friends);
};