【发布时间】:2016-12-06 14:55:57
【问题描述】:
我有一个 ng-repeat,它有一个按钮,该按钮具有切换该 ng-repeat 内的 ng-show 元素的功能。
类movie_option span 内部有一个ng-click=toggleInfo($index):
而 div additional_info 有一个 ng-show 可以显示或隐藏一个元素。
<ul ng-cloak="showResult">
<li class="search_results" ng-repeat="movie in movies | orderBy: '-release_date' track by $index">
<div class="movie_info">
<div class="movie_options">
<div class="slide">
<span class="movie_option">
<span><i class="fa fa-question-circle" aria-hidden="true" ng-click="toggleInfo($index)"></i></span>
</span>
</div>
</div>
</div>
<div class="additional_info" ng-show="hiddenDiv[$index]">
{{movie.overview}}
</div>
</li>
</ul>
当用户点击图标时,它会调用这个函数:
$scope.toggleInfo = function (index) {
$scope.hiddenDiv[index] = !$scope.hiddenDiv[index];
}
这会从 hiddenDiv ng-show 切换 ng-show 状态。这很好用。
我想要做的是将所有 hiddenDiv 状态设置为 false,但单击的状态除外,因此只有一个 ng-show 为 true。
【问题讨论】:
标签: javascript html angularjs angularjs-ng-repeat angularjs-ng-show