使用ng-repeat在表格中循环

时间:2015-04-30 10:03:51

标签: angularjs angularjs-ng-repeat

我有一张这样的桌子:

  <tr ng-repeat="car in $data">
       <td>
          ...
       </td>
    </tr>

我希望在td

之前显示4 tr

我想实现此代码:

  

$ i = 0,然后循环$ i ++的每次传递,然后i == $ 4   你创建一个新行(TR)并给你$ i = 0

我该怎么做..?

3 个答案:

答案 0 :(得分:3)

我想这是您正在寻找的解决方案:

  <table>
      <tr ng-repeat="car in cars" ng-if="$index % 4 == 0">
        <td ng-repeat="car in cars.slice($index, $index + 4)">
        {{car}}
        </td>
      </tr>
  </table>

工作JsFiddle

另一种选择是正确组织Controller内的数据,就像@rpadovani已经建议的那样。

答案 1 :(得分:1)

所以你想要每个tr 4个? 你走了:

<tr ng-repeat="car in $data">
    <td data-ng-repeat="i in [0,1,2,3]">
      do something
    </td>
</tr>

答案 2 :(得分:1)

你需要使$data成为数组数组,所以结构如下:[[a1, a2, a3, a4], [b1, b2, b3, b4]]然后你使用这段代码:

<tr ng-repeat="row in $data">
    <td ng-repeat="car in row">
        ...
    </td>
</tr>