以下是我要做的事情:
<tr ng-repeat = "data in tabularData track by $index" >
<td ng-repeat ="(key,value) in usedAttributes" >{{data[key]}}</td>
</tr>
当表格数据结构如下时,此DID有效:
[3920F0-3434D3-ADF-3SDF:[{CreatedBy: "John Doe", CreatedDate: "10-20-2016"}]
然而,当我把它弄平时,看起来更像是这样:
[{CreatedBy: "John Doe", CreatedDate: "10-20-2016",PrimaryID:"3920F0-3434D3-ADF-3SDF"}]
这不起作用。我觉得我错过了很明显的东西。
usedAttributes只是一个包含属性(列数据)的简单对象数组。这个想法是用户可以选择他们想要获得的属性,因此数据表非常动态。对于此示例,usedAttributes可能如下所示:
["CreatedBy": [{Checked:false}],"CreatedDate":[{Checked:true}]]
因此,用户希望看到这两个属性,尽管存在更多属性。
答案 0 :(得分:1)
你可以这样做,
<div ng-controller="listController">
<table class="table table-striped">
<thead>
<tr>
<th ng-repeat="(key, value) in tabularData[0]">{{key | uppercase }}
</th>
</tr>
<tbody>
<tr ng-repeat="val in tabularData">
<td ng-repeat="cell in val">
<input type="text" ng-model="cell">
</td>
</tr>
</tbody>
</table>
</div>
<强> DEMO 强>