2015-03-19 52 views
1

我使用的是ui.bootstrap的摺疊,並且在表格行中有兩個摺疊按鈕,我想在另一個打開之前關閉一個摺疊。ui.bootstrap.collapse - 兩個崩潰 - 只有一個應該打開

當前第二次崩潰打開另外打開,以便兩者都打開並堆疊在彼此的頂部。

我搜索並找到一種方法來解決這個使用bootstrap和jquery(http://jsfiddle.net/RfsS9/5/),但我想堅持angularjs。

有沒有人知道如何解決這個角度的方式?

這是我(簡化)代碼:

<table class="table table-bordered"> 
<thead> 
    <tr> 
    ... 
    </tr> 
</thead> 
<tbody> 
    <tr> 
    <td>/<span class="pull-right" ng-click="urlCollapsed = !urlCollapsed">&#x25BC;</span></td> 
    ... 
    <td>54,654<span class="pull-right" ng-click="trafficCollapsed = !trafficCollapsed">&#x25BC;</span></td> 
    </tr> 

<!-- UrlDetails --> 
    <tr collapse="!urlCollapsed"> 
    <td colspan="4" style="background-color: pink"></td> 
    </tr> 

<!-- trafficDetails --> 
    <tr collapse="!trafficCollapsed"> 
    <td colspan="4" style="background-color: blue"></td> 
    </tr> 

    </tbody> 
</table> 

和完整代碼作爲plunker: http://plnkr.co/edit/T5iUXTL130p93tzNiera?p=preview

回答

1

你應該做的是設置urlCollapsedfalse當您展開交通面板和設置當您展開網址面板時,您可以使用trafficCollapsedfalse

更簡單的方法是爲每個狀態設置一個切換函數,如下所示。

JS

var app = angular.module("MyApp", ['ui.bootstrap']); 

app.controller('mainController', function ($scope) { 
    $scope.trafficCollapsed = false; 
    $scope.urlCollapsed = false; 

    $scope.toggleUrl = function() { 
    $scope.urlCollapsed = false; 
    $scope.trafficCollapsed = !$scope.trafficCollapsed 
    }; 

    $scope.toggleTraffic = function() { 
    $scope.trafficCollapsed = false; 
    $scope.urlCollapsed = !$scope.urlCollapsed;  
    }; 
}); 

HTML

<tr> 
    <td>/<span class="pull-right" ng-click="toggleUrl()">&#x25BC;</span></td> 
    <td>A beautiful title</td> 
    <td>A beautiful description</td> 
    <td>54,654<span class="pull-right" ng-click="toggleTraffic()">&#x25BC;</span></td> 
</tr> 
+0

重組的代碼和所使用的肘節功能,這完美地工作。感謝一噸:) – user3721307 2015-03-19 12:41:57

+0

...我其實有一個問題 - 我實現了你的代碼工作正常,但有一個延遲,兩個面板都打開了幾秒鐘。 任何想法如何解決這個問題? 這是工作代碼:http://codepen.io/anon/pen/yyGXqM – user3721307 2015-03-20 06:58:13

+0

我記得看到,但認爲這是plunkr /瀏覽器緩慢。當你嘗試摺疊擴展元素時,我意識到它實際上很慢。嘗試使用CSS實現平滑過渡。 – dcodesmith 2015-03-20 07:05:14

相關問題