2016-04-27 56 views
4

我需要在選定的<li>上添加一個類,就像我在演示中顯示的一樣,但如果點擊另一個<li>,則不希望它被刪除。「ng-class」on each clicked item

請幫

<div ng-app="myApp"> 
    <ul ng-controller="myCtrl"> 
     <li ng-repeat="item in model.items" class="commonClass" ng-class="{'on': model.selected==item}" ng-click="model.selected=item">{{ item.name }}</li> 
    </ul> 
</div> 

JS

var app = angular.module('myApp', []); 

app.controller('myCtrl', function ($scope) { 

    $scope.model = { 
     selected: null, 
     items : [ 
      {name: "Apple"}, 
      {name: "Banana"}, 
      {name: "California"} 
     ] 
    }; 
}) 

demo

回答

2

只需添加這樣

<div ng-app="myApp"> 
    <ul ng-controller="myCtrl"> 
     <li ng-repeat="item in model.items" class="commonClass" ng-class="{'on': selected==$index}" ng-click="selected=$index">{{ item.name }}</li> 
    </ul> 
</div>