我有一个手风琴:
<accordion>
<accordion-group ng-repeat="group in groups" heading="{{group.title}}" id="{{group.id}}" is-open="group.open">
<table class="table">
<tr>
<td>{{group.definition}}</td>
</tr>
</table>
</accordion-group>
</accordion>
每个手风琴都有一个唯一的ID。
我知道如何根据手风琴的位置打开手风琴:
<button ng-click="groups[0].open = !groups[0].open">Toggle Title 1 based on index</button>
但是如何根据手风琴的ID打开手风琴呢?
我目前的尝试是:http://plnkr.co/edit/c3GeaWfOgZ2YoQb2kUbW
根据我的评论,试试这样的东西。。。
在您的控制器中,创建一个地图来存储打开的组信息
$scope.accordionGroups = {};
如果你想让一个组默认打开,试试这个
$scope.accordionGroups[groups[0].id] = true;
然后在你的模板中使用这个
<accordion-group ng-repeat="group in groups"
heading="{{group.title}}" id="{{group.id}}"
is-open="accordionGroups[group.id]">
要用按钮切换组,请使用此
<button ng-click="accordionGroups.title1 = !accordionGroups.title1">Toggle title1</button>
Plunker