数据父="#手风琴"不工作

时间:2016-07-21 09:12:19

标签: javascript angularjs twitter-bootstrap twitter-bootstrap-3

我有一个场景,当我点击特定主题并且应该出现相关问题列表时我需要切换,并且当我使用手风琴时显示其中一个可折叠项目时我也想要关闭。

HTML:

 <ul id="accordion">
     <li ng-repeat="topics in oJdDetails.topics" class="topic-li" data-toggle="collapse" data-target="{{'#'+topics + $index}}" data-parent="#accordion" ng-click="fngetQList(topics,$index)">
         <p class="topics-p"> {{topics}}</p>
         <ul id="{{topics + $index}}" class="collapse topic-li">
             <li ng-repeat="value in aQuestionList">{{value.quesList.quesListName}}</li>
         </ul>
     </li>
 </ul>

JavaScript的:

$scope.fngetQList = function(topics, index) {
        debugger;
        $scope.displayQList = true;
        $scope.sTopics = topics;
        $scope.index = index;
        getCandidateInterviewListService.fnGetQList(topics).then(function(response) {
            $scope.aQuestionList = response;
            console.log($scope.aQuestionList);
        });
    };

这里的主题作为回应而来,我正在为崩溃制作动态ID 但手风琴在这里不起作用。

当我点击特定主题时,之前打开的订单主题未关闭且我不理解该问题。

任何帮助都将不胜感激。

1 个答案:

答案 0 :(得分:0)

我无法在这里以角度为例,但你可以使用事件&#34; show.bs.collapse&#34;在点击任何手风琴时点击,点击你可以关闭那些有.in类型的手风琴然后你点击的手风琴将会打开。请参阅下面的演示:

&#13;
&#13;
Parent
&#13;
  $('#accordion .collapse').on('show.bs.collapse', function (e) {
alert("Open clicked accordian but hide others(already opened)");
        $('#accordion .in').collapse('hide');
    });
&#13;
&#13;
&#13;