用angularjs显示/隐藏所有显示/隐藏区域
问题描述:
我需要全面显示/隐藏点击以显示或隐藏数据“面板”列表的所有细节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。
任何帮助将不胜感激。
答
一两件事你可以尝试是有其设置,如果它的显示/隐藏在每个标段项的属性标志和展示基于如果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>
不幸的是,这是行不通的。或者是行不通的,因为只要有一个是真的,另一个就不会改变。需要发生的事情是hideAllDetails发生变化时,所有单独的部分都变为新的选择。之后,他们按照单独的点击,直到再次点击所有点击。全部点击的状态需要以某种方式保存。 – EHendricks