angularjs ng-repeat并创建两个tr

时间:2016-09-27 11:54:17

标签: javascript angularjs angularjs-ng-repeat

我正在创建一个可切换的元素。我需要为每个ng-repeat创建两个tr。

我想要下面的结果,当点击第一个tr时,它会显示第二个。

如何为每个ng-repeat创建两个tr-`而不制作多个表?

// repeat start 
   <tr class="rowlink" ng-repeat="i in vm.something" ng-click="show other">
                    <td><div >some info here</div></td>
                    <td><div >info</div></td>

                    <td><div >something here  </div></td>
                    <td><div >49</div></td>
                </tr>
                <tr class="my toggable element">
                    <td colspan="4>
                        <div>some info from the ng-repeat here too.
                        </div>
                    </td>
                </tr>
// first repeat done

修改 我可以在tbody中进行ng-repeat,但后来我得到了多个tbodys,我不想要那个:|

2 个答案:

答案 0 :(得分:1)

像这样的东西

<table>
  <tr ng-repeat-start="item in items">
      <td>am there</td>
  </tr>
  <tr ng-repeat-end>
      <td>am there too</td>
  </tr>
</table>

以下是example

答案 1 :(得分:0)

使用HTML5父级,如tbody,并对其使用ng-repeat:

<tbody class="rowlink" ng-repeat="i in vm.something" ng-click="show other">
   <tr>
       <td>some info here</td>
   </tr>
   <tr>
       <td>some other info here</td>
   </tr>
</tbody>

这样,每次ng-repeat迭代都会以两个tr结尾。

修改

OP要求不要使用多个tbody,所以这不是他想要的答案。然而,无论如何,这对那些没有这些需要的人来说应该是有用的。