opening/closing ONE时所有手风琴一次打开和关闭一次
All accordion open and close once at a time when opening/closing ONE
我用的是angularbootstrapui0.14.3.
当我单击任何动态生成的手风琴时,然后单击所有这些 open/close。这里有问题。
我只想要我点击的那个 open/close。
我已经设置了 close-others="true" 但那不起作用...
我做错了什么?
Html:
<uib-accordion close-others="true">
<uib-accordion-group is-open="status.isFirstOpen" ng-repeat="t in tests">
<uib-accordion-heading>
{{t.schoolclassCode}}
<span style="background:orange;">{{t.type}}</span>
<span style="background:green;">{{t.number}}</span>
<span style="background:aliceblue;">{{t.date}}</span>
<i class="pull-right glyphicon" ng-class="{'glyphicon-chevron-down': status.isFirstOpen, 'glyphicon-chevron-right': !status.isFirstOpen}"></i>
</uib-accordion-heading>
My dynamic content
</uib-accordion-group>
</uib-accordion>
控制器:
function TestsController($scope, tests) {
$scope.tests = tests;
$scope.oneAtATime = true;
$scope.status = {
isFirstOpen: true,
isFirstDisabled: false
};
}
这是因为你的 is-open="status.isFirstOpen"
在你所有的 uib-accordion-group
中都是同一个变量。当您打开或关闭其中一个手风琴时,其他人会看到相同的变量并且会做同样的事情。您必须使用一个数组来为每个手风琴组定义一个唯一的变量。我给你举了个例子here.
<uib-accordion close-others="false">
<uib-accordion-group ng-repeat="group in groups track by $index" is-open="accordionArray[$index]">
<uib-accordion-heading>
{{group.title}}
<i class="pull-right glyphicon" ng-class="accordionArray[$index] ? 'glyphicon-chevron-down':'glyphicon-chevron-right'"></i>
</uib-accordion-heading>
{{group.content}}
</uib-accordion-group>
这在控制器中 $scope.accordionArray = []
我用的是angularbootstrapui0.14.3.
当我单击任何动态生成的手风琴时,然后单击所有这些 open/close。这里有问题。
我只想要我点击的那个 open/close。
我已经设置了 close-others="true" 但那不起作用...
我做错了什么?
Html:
<uib-accordion close-others="true">
<uib-accordion-group is-open="status.isFirstOpen" ng-repeat="t in tests">
<uib-accordion-heading>
{{t.schoolclassCode}}
<span style="background:orange;">{{t.type}}</span>
<span style="background:green;">{{t.number}}</span>
<span style="background:aliceblue;">{{t.date}}</span>
<i class="pull-right glyphicon" ng-class="{'glyphicon-chevron-down': status.isFirstOpen, 'glyphicon-chevron-right': !status.isFirstOpen}"></i>
</uib-accordion-heading>
My dynamic content
</uib-accordion-group>
</uib-accordion>
控制器:
function TestsController($scope, tests) {
$scope.tests = tests;
$scope.oneAtATime = true;
$scope.status = {
isFirstOpen: true,
isFirstDisabled: false
};
}
这是因为你的 is-open="status.isFirstOpen"
在你所有的 uib-accordion-group
中都是同一个变量。当您打开或关闭其中一个手风琴时,其他人会看到相同的变量并且会做同样的事情。您必须使用一个数组来为每个手风琴组定义一个唯一的变量。我给你举了个例子here.
<uib-accordion close-others="false">
<uib-accordion-group ng-repeat="group in groups track by $index" is-open="accordionArray[$index]">
<uib-accordion-heading>
{{group.title}}
<i class="pull-right glyphicon" ng-class="accordionArray[$index] ? 'glyphicon-chevron-down':'glyphicon-chevron-right'"></i>
</uib-accordion-heading>
{{group.content}}
</uib-accordion-group>
这在控制器中 $scope.accordionArray = []