0

こんにちは、ng-repeat からの要素のリストがあるときに、ユーザーがリストの 1 つをクリックして .css() を介して強調表示できるようにする方法を知りたいと思っていました。次に、ユーザーが別の要素をクリックすると、前の要素の強調表示が解除され、新しくクリックされた要素が強調表示されますか?

ありがとう

4

1 に答える 1

4

ng-click を使用して、選択した項目を設定し、ng-class で条件付き CSS クラスを適用してみてください。

<ul>
    <li ng-repeat="item in list" ng-class="{'highlight': model.selected == item}">
        <button ng-click="model.selected = item">Select</button>
    </li>
</ul>

コントローラーで:

$scope.model = { selected : null };

ng-repeat のすべてのアイテムでスコープが共有されるように、オブジェクトを使用して選択したアイテムを保持する必要があります。

デモ: http://plnkr.co/edit/EdrD7MvesW3xn9C9c6fk?p=preview

于 2013-11-08T06:19:57.537 に答える