用于构建表格的二维循环
2D loops for building a table
我想循环遍历angularjs中的二维结构,将其显示在表中。数据如下:
data = {
"keyA": ["valueA", "valueB"],
"keyB": ["valueC", "valueD"]
}
输出应该是这样的:
<table>
<tr>
<th>keyA</th>
<td>valueA</td>
</tr>
<tr>
<th>keyA</th>
<td>valueB</td>
</tr>
<tr>
<th>keyB</th>
<td>valueC</td>
</tr>
<tr>
<th>keyB</th>
<td>valueD</td>
</tr>
</table>
目前,我的角度丰富的html不起作用,看起来如下:
<table>
<div ng:repeat="(key, values) in data">
<div ng:repeat="value in values">
<tr>
<td>{{key}}</td>
<td>{{value}}</td>
</tr>
</div>
</div>
</table>
在这种情况下,我使用<div>
元素,但它不起作用,因为很明显,<div>
不属于这样的<table>
。有没有找到一个无操作元素,我必须用它来处理这样的循环?
我不确定这是否可能。也许有人可以比我更有创造力。不过你可以试试这样的东西:
控制器-
var data = {
"keyA": ["valueA", "valueB"],
"keyB": ["valueC", "valueD"]
};
$scope.getPairs = function() {
var ret = [];
for(var key in data) {
for(var i = 0; i < data[key].length; i++) {
ret.push(key, data[key][i]);
}
}
return ret;
}
HTML-
<table>
<tr ng-repeat="pair in getPairs() track by $index">
<td>{{pair[0]}}</td>
<td>{{pair[1]}}</td>
</tr>
</table>
您可以在<tr>
和<tbody>
元素上添加ngRepeat
:
<table>
<tbody ng-repeat="(key, values) in data">
<tr ng-repeat="value in values">
<th>{{key}}</th>
<td>{{value}}</td>
</tr>
</tbody>
</table>
Plunker
相关文章:
- 作为一个二维数组,从ajax接收
- 创建P5.js二维数组
- 在WebGL中绘制多个二维图像
- 如何在Javascript中从select标记的一系列选项中构建二维数组
- inArray,indexOf在二维数组中
- 比较二维数组js
- 从二维数组中获取img src和img维度,并在body中显示
- 使用方程和/或矢量在三维空间中绘制二维平面
- 在二维数组中搜索比嵌套循环更有效的方法
- 二维Javascript数组无法填充duel for循环
- 用于构建表格的二维循环
- 创建二维数组并在jquery中循环使用
- for循环生成的二维JavaScript数组正在被上一个循环结果覆盖
- javascript中的二维动态数组和php中的foreach循环
- 循环通过一个数组创建一个二维数组-循环不工作
- 在二维数组中使用for循环分配坐标
- 在迭代二维数组时获取外部 for 循环的索引
- 如何创建具有字符串索引的二维对象并循环遍历结果
- 在Javascript的for循环中,在二维数组中推入值
- 用Javascript将data-title from headline添加到每个td(二维数组中的for循环)