我有这个 Angular 代码。
<div ng-repeat="item in items | filter:search" class="container">
<h3>{{item.name}}</h3>
<p>category:{{item.category}}</p>
<p>price:INR {{item.price}} /-</p>
<br/>
<button ng-hide="showme" ng-click="process(item.name,item.price)">Add</button>
<button ng-show="showme" class="ng-cloak">Remove</button>
</div>``
现在我想要的是,每当我单击一个 div 中的添加按钮时,该按钮应该隐藏,而删除按钮应该显示。我能够做到这一点,但所有的 div 都在改变。我只想更改单击按钮的那个 div。
这是我的 Controller 代码
var myApp = angular.module('myApp',[]);
myApp.controller('restaurantController', function($scope, $http){
$http.get('apna.json').success(function (data){
$scope.items = data;
});
$scope.showme=false;
$scope.process = function(name,value){
$scope.total = parseInt($scope.total) + parseInt(value);
$scope.showme = true;
}
});
最佳答案
你可以为你的项目数组分配一个showme字段,并给它一个值false,并在ng-show和ng-hide指令中使用item.showme .同样,在 process() 中更改与该项目相关的 showme 变量
关于javascript - 如何在ng-repeat中更改单个div的内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35257304/