AngularJS。嵌套的ng-repeat

时间:2014-08-03 02:15:00

标签: javascript angularjs

我在ng-repeat / ng-repeat-start选项中使用ng-repeat-end指令。在主循环内部,我还有另一个内部ng-repeat。但问题是我的外部ng-repeat-start声明仅用于声明循环,实际上我并不需要重复声明的HTML元素。见下面的例子:

<tbody>
    <tr ng-repeat-start="anArray in arrayOfArrays">  <!-- HOW TO REMOVE THIS EMPTY <tr>? -->

    </tr>

    <tr ng-repeat="item in anArray ">
        <td>{{item .name}}</span></td>
        <td>{{item .surname}}</td>
    </tr>

    <tr ng-repeat-end>
        <td>
            <span>Total</span>
        </td>
    </tr>
</tbody>

如何删除<tr>元素但保留循环声明?

我试图在同一个<tr>元素上声明循环(外部和内部),但它不起作用:

  <tr ng-repeat-start="anArray in arrayOfArrays" ng-repeat="item in anArray ">          
  </tr>

1 个答案:

答案 0 :(得分:1)

如果您想重复外圈中的所有内容,您可以使用<tbody>执行重复操作。代码如下:

<tbody ng-repeat="anArray in arrayOfArrays">
    <tr ng-repeat="item in anArray ">
        <td>{{item .name}}</span></td>
        <td>{{item .surname}}</td>
    </tr>
    <tr>
        <td>
            <span>Total</span>
        </td>
    </tr>
</tbody>

如果您想多次重复仅内圈并显示一次总计,您可以尝试将表格划分为两个元素:

<tbody ng-repeat="anArray in arrayOfArrays">
    <tr ng-repeat="item in anArray ">
        <td>{{item .name}}</span></td>
        <td>{{item .surname}}</td>
    </tr>
</tbody>
<tfooter>
      <tr>
        <td>
            <span>Total</span>
        </td>
      </tr>
</tfooter>