当客户端单击该行时,我想在表中内嵌一个额外的行。不应预取数据,因为我预计最多有 30 行,但其中每一行都有关联的数据,而这些数据在一次获取中是不合理的。
到目前为止,我的方法是使用 ng-repeat 来迭代我的集合并呈现一个表格。当客户端按下该行时,客户端希望该行的详细信息作为按下行下方的额外行内联显示。
<tr ng-repeat="court in courts">
<td>{{court.name}}</td>
<td>{{court.number}}</td>
<td>{{court.nrOfPlayers}}</td>
<td>
<a href ng:click="toggle(court.number)">Details</a> <!-- click toggles extra row with data loaded async -->
</td>
</tr>
<!-- extra row here -->
我已经设法用 ng-show 以一种骇人听闻的方式显示 table 下方的细节,但这不是我想要的。
你如何用 angular.js 实现这一点?这样做的 Angular 方法是什么?
这是一个愚蠢的 Squash 场示例的 fiddle http://jsfiddle.net/HByEv/
最佳答案
我认为可能的解决方案是 http://jsfiddle.net/HByEv/2/ .
如果您还想摆脱额外的 <tr ng-show="..."></tr>
,在 fiddle 中评论的“没有玩家”消息还有一个替代方案。 .
编辑:
正如评论中所指出的,在 AngularJS 1.2+ 中,您现在可以使用 ng-repeat-start
和 ng-repeat-end
来解决这个问题。
Josef Harush 提供了一个 fiddle :http://jsfiddle.net/3yamebfw/
关于angularjs - 以 Angular 推送使用 ng-repeat 呈现的表格中的行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15545852/