我有一个嵌套的表结构,其中一个表根据Javascript对象“metasetHashSplit”的ng-repeat进行填充,并且该表依次有一个表,该表根据被称为“ids”的属性进行填充。我有一个要求,如果内部表中的所有元素都被过滤掉,我需要隐藏主要的ng-repeat。我正在使用“管道”/“|”过滤内部表格。 如果过滤掉内部表中的所有记录,我无法处理何时或如何触发ng-show / hide。
这是设置代码的方式:
<tbody ng-repeat="(metaset, ids) in metasetHashSplit">
<tr class = "meta">
<td rowspan = 100 >{{metaset}}</td>
</tr>
<tr class = "meta" style="margin:0;padding:0;" ng-repeat="item in ids" >
<td class = "innerTable">
<table class="table child table-hover table-bordered table-condensed " >
<tr ng-repeat="buy in item.Buy | filter:{ MBC: by_buyMBC }" >
<td >{{buy.BuyId}}</td>
<td >{{buy.BuyRelease}}</span></td>
<td >{{buy.BuyComponentAffected}}</td>
<td >{{buy.BuyStatus}}</span></td>
</tr>
</table>
</td>
</tr>
如果他们发现自己处于这样的位置,有人可以帮助我吗?基本上tbody需要显示/隐藏| filter:{MBC:by_buyMBC}结果!
答案 0 :(得分:2)
基于this question使用:
<div ng-repeat="buy in filtered = (item.Buy | filter:{ MBC: by_buyMBC })">
</div>
所以你要做的只是在正确的元素上使用ng-if="filtered.length > 0"
来显示和隐藏