将类添加到选定的ng-repeat列表元素

时间:2016-01-26 18:36:56

标签: angularjs angularjs-ng-repeat addclass

嘿我在我的模板中使用ng-repeat通过数组循环。该列表吐出9个列表元素,我想更改所选列表元素的背景颜色,但我想以一种方式进行,可以选择多个,并选择具有不同背景颜色的颜色。最初我将$ event传递给list元素上的click函数,并将一个类添加到event.target,但是将该类放在所有列表元素而不是所选列表元素上。

<ul>
            <li class="info-items"
                ng-repeat="card in config.cards"
                ng-class="{'error-border': emptyCardsArray}">
                <div class="inner-text"
                     ng-model="userSelection.cards"
                     ng-click="addCard(card.name, $event)">{{card.name}}{{$index + 1}}</div>
            </li>
        </ul>

HTML:

$(event.target).addClass('active.cards');

JS:

我正在重复的列表不幸没有唯一的ID,或者我已经传入了ID并创建了一个条件来检查所选项是否有一个并应用了该类。

1 个答案:

答案 0 :(得分:0)

使用ng-class进行此操作是一种更好的做法。

<ul>
  <li class="info-items"
      ng-repeat="card in config.cards"
      ng-class="{'error-border': emptyCardsArray}">
      <div class="inner-text"
           ng-model="userSelection.cards"
           ng-class="active.cards">{{card.name}}{{$index + 1}}
      </div>
   </li>
</ul>
相关问题