2017-10-09 239 views
0

我需要全面顯示/隱藏點擊以顯示或隱藏數據「面板」列表的所有細節div。同樣在每個面板中,還有一個顯示/隱藏點擊單獨顯示或隱藏該數據的分區。用angularjs顯示/隱藏所有顯示/隱藏區域

我認爲如果單擊整體顯示/隱藏,單擊點擊值應該設置爲等於總值。這樣,如果單個人被改變,他們都被設置爲顯示或隱藏,當主人被點擊。

這是我想這樣做:

<div>- <a href='#' ng-click="hideAllDetails = ! hideAllDetails; hideDetails = hideAllDetails">Hide All Details/+ Show All</a></div> 

    <div class="tender-list" ng-repeat="row in tenders" ng-include="'tender/tender_panel.html'"></div> 

凡tender_panel.html的隱藏/顯示部分是在這裏:

 <div>- <a href='#' ng-click="hideDetails = ! hideDetails">Hide Details</a></div> 
    <div class="tender-details" ng-hide="hideDetails"> 

     <table width="100%" id="tender-bottom-table"> 
     <tbody> 
      ... 
     </tbody> 
     </table> 
    </div> 

上面有招標,自下而上另一個表表。再加上另一張桌子。

發生的事情是,它最初加載時工作正常。全部隱藏/顯示全部作品。然後我點擊個人展覽/皮革,他們的工作。但是,全部顯示/全部隱藏不再起作用,我不明白點擊單個鏈接是如何破壞事物的。

這個程序是Symfony2 Angular和Bootstrap。

任何幫助將不勝感激。

回答

0

一兩件事你可以嘗試是有其設置,如果它的顯示/隱藏在每個標段項的屬性標誌和展示基於如果hideAllDetails +他們的國旗是真實的個人資料:

<div>- <a href='#' ng-click="hideAllDetails = ! hideAllDetails;">Hide All 
Details/+ Show All</a></div> 
<div class="tender-list" ng-repeat="row in tenders" ng- 
include="'tender/tender_panel.html'"></div> 

tender_panel。 html:

<div>- <a href='#' ng-click="row.hideDetails = ! row.hideDetails">Hide 
    Details</a></div> 
<div class="tender-details" ng-hide="hideDetails || hideAllDetails"> 

    <table width="100%" id="tender-bottom-table"> 
    <tbody> 
     ... 
    </tbody> 
    </table> 
</div> 
+0

不幸的是,這是行不通的。或者是行不通的,因爲只要有一個是真的,另一個就不會改變。需要發生的事情是hideAllDetails發生變化時,所有單獨的部分都變爲新的選擇。之後,他們按照單獨的點擊,直到再次點擊所有點擊。全部點擊的狀態需要以某種方式保存。 – EHendricks