嵌套的 ng-repeat tbody 不同列表
Nested ng-repeat tbody different list
我的代码是这样的:
<tbody ng-repeat="item in ctrl.list">
<tr>
<td style="vertical-align: middle">{{item.numerodoc}}<br>
</td>
<td style="vertical-align: middle">{{item.sgmittragsoc}}<br>
</td>
</tr>
<tr ng-if="toggle[$index]" ng-repeat="detail in ctrl.details">
<td style="vertical-align: middle">{{detail.sgmittragsoc}}<br>
</td>
<td style="vertical-align: middle">{{detail.sgdestragsoc}}<br>
</td>
</tr>
</tbody>
第一部分有效(我能够重复列表中的每一项),第二部分无效(我无法重复详细信息列表中的每一项)。
仅当我单击一个按钮并且详细信息列表将更改时,该 tr 才会激活。
我应该怎么做才能让它发挥作用?
我不能在 tbody 中使用 div,我什至尝试过 ng-repeat-start 但我无法理解将 ng-repeat-end 放在哪里,因为我只有一个 tr 可以重复。
好的,找到了一个奇怪但有效的方法:
<tr ng-if="toggle[$index]">
<td>
<table class="table borderless" style="margin: 10px 0;">
<tbody ng-repeat="detail in ctrl.details">
<tr>
<td></td>
</tr>
</tbody>
</table>
</td>
<td>
<table class="table borderless" style="margin: 10px 0;">
<tbody ng-repeat="detail in ctrl.details">
<tr>
<td></td>
</tr>
</tbody>
</table>
</td>
<td>
<table class="table borderless" style="margin: 10px 0;">
<tbody ng-repeat="detail in ctrl.details">
<tr>
<td style="vertical-align: middle">{{detail.sgmittragsoc}}<br>
</td>
</tr>
</tbody>
</table>
</td>
</tr>
我每次都必须重复 table 才能在我的网络应用程序上获得正确的布局,但主要重点是您可以使用 [=15= 在 ng-repeat 主体内循环 ng-repeat ] 在 td 标签内。
关于 ng-repeat-start / -end 结构。
我无法对此进行测试,因为我缺少你们中的大部分代码,但是 start/end 是这样工作的。
此外,您想将 ng-repeat 放在 <tr>
上,因为您不想重复整个 table.
<tbody>
<tr ng-repeat-start="item in ctrl.list">
<td style="vertical-align: middle">{{item.numerodoc}}<br>
</td>
<td style="vertical-align: middle">{{item.sgmittragsoc}}<br>
</td>
</tr>
<tr ng-repeat-end>
<td style="vertical-align: middle">{{detail.sgmittragsoc}}<br>
</td>
<td style="vertical-align: middle">{{detail.sgdestragsoc}}<br>
</td>
</tr>
</tbody>
另外,你的数组结构如何?
列表和详细信息是否在同一范围内?
这真的取决于。请提供更多详细信息,我可能会提供帮助!
我的代码是这样的:
<tbody ng-repeat="item in ctrl.list">
<tr>
<td style="vertical-align: middle">{{item.numerodoc}}<br>
</td>
<td style="vertical-align: middle">{{item.sgmittragsoc}}<br>
</td>
</tr>
<tr ng-if="toggle[$index]" ng-repeat="detail in ctrl.details">
<td style="vertical-align: middle">{{detail.sgmittragsoc}}<br>
</td>
<td style="vertical-align: middle">{{detail.sgdestragsoc}}<br>
</td>
</tr>
</tbody>
第一部分有效(我能够重复列表中的每一项),第二部分无效(我无法重复详细信息列表中的每一项)。 仅当我单击一个按钮并且详细信息列表将更改时,该 tr 才会激活。 我应该怎么做才能让它发挥作用? 我不能在 tbody 中使用 div,我什至尝试过 ng-repeat-start 但我无法理解将 ng-repeat-end 放在哪里,因为我只有一个 tr 可以重复。
好的,找到了一个奇怪但有效的方法:
<tr ng-if="toggle[$index]">
<td>
<table class="table borderless" style="margin: 10px 0;">
<tbody ng-repeat="detail in ctrl.details">
<tr>
<td></td>
</tr>
</tbody>
</table>
</td>
<td>
<table class="table borderless" style="margin: 10px 0;">
<tbody ng-repeat="detail in ctrl.details">
<tr>
<td></td>
</tr>
</tbody>
</table>
</td>
<td>
<table class="table borderless" style="margin: 10px 0;">
<tbody ng-repeat="detail in ctrl.details">
<tr>
<td style="vertical-align: middle">{{detail.sgmittragsoc}}<br>
</td>
</tr>
</tbody>
</table>
</td>
</tr>
我每次都必须重复 table 才能在我的网络应用程序上获得正确的布局,但主要重点是您可以使用 [=15= 在 ng-repeat 主体内循环 ng-repeat ] 在 td 标签内。
关于 ng-repeat-start / -end 结构。
我无法对此进行测试,因为我缺少你们中的大部分代码,但是 start/end 是这样工作的。
此外,您想将 ng-repeat 放在 <tr>
上,因为您不想重复整个 table.
<tbody>
<tr ng-repeat-start="item in ctrl.list">
<td style="vertical-align: middle">{{item.numerodoc}}<br>
</td>
<td style="vertical-align: middle">{{item.sgmittragsoc}}<br>
</td>
</tr>
<tr ng-repeat-end>
<td style="vertical-align: middle">{{detail.sgmittragsoc}}<br>
</td>
<td style="vertical-align: middle">{{detail.sgdestragsoc}}<br>
</td>
</tr>
</tbody>
另外,你的数组结构如何? 列表和详细信息是否在同一范围内? 这真的取决于。请提供更多详细信息,我可能会提供帮助!