AngulaJs:ng-click不适用于netsted uib-accordion

时间:2016-12-20 13:43:50

标签: angularjs angular-ui-bootstrap accordion angularjs-ng-click

我使用nested uib-accordion,我想为每个uib-accordion添加ng-click

      <uib-accordion close-others="oneAtATime1">
            <div uib-accordion-group class="panel-default" is-open="prInfo.isOpen" heading="{{prInfo.name}}"
                 ng-click="getPayrolls(prInfo)"
                 ng-repeat="prInfo in allPersonInfoNames">
                <uib-accordion close-others="oneAtATime2">
                    <div uib-accordion-group class="panel-default" heading="{{payroll.logPeriod.name}}"
                         ng-click="getPayroll(payroll)"
                         ng-repeat="payroll in prInfo.payrolls | orderBy: 'logPeriod.dbId': reverse = true">
                        <div class="row">
                            <div class="col-md-4">
                                <h1>in nested accordion</h1>
                            </div>
                        </div>
                    </div>
                </uib-accordion>
            </div>
        </uib-accordion>

所以,当我点击第一个手风琴时,首先点击工作,但是当我点击第二个手风琴时,再次调用ng-click,然后再点击第二个ng-click调用。

我可以通过在手风琴体中添加第二个ng-click来解决这个问题, 但是通过这个解决方案,我必须点击3次才能进行第二次点击,第一次打开第一个手风琴并先运行ng-click,第二次打开第二次手风琴,第三次点击嵌套手风琴体中的功能运行第二个ng-click。如何通过第一个解决方案将ng-click functions分开?

demo on plunker

1 个答案:

答案 0 :(得分:1)

您面临的问题似乎与此主题相关:AngularJS ng-click stopPropagation 当您单击第二次ng-click时,您必须停止事件传播以防止触发第一个方法。

我希望它可以提供帮助