Я делаю таблицу, строка и столбцы которой зависят от JSON
JSON:
$scope.dataToShow=[
tableHeder=["First Name","Age"],
{
name:"rahim",
age:23
},
{
name:"karim",
age:24
}
];
Мой код:
<table>
<tr>
<th>Select</th>
<th ng-repeat="header in dataToShow.tableHeader"></th>
</tr>
<tr ng-repeat="row in dataToShow">
<td>
<input type="checkbox">
</td>
<td ng-repeat="item in row">{{item}}</td>
</tr>
</table>
Я хочу, чтобы мое мнение выглядело так:
Выбрать возраст имен
checkbox rahim 23
checkbox karim 24
Но я получаю:
Выбрать
Флажок Название возраст
Флажок rahim 23
Флажок karim 24
Как я могу это решить???
если ответ JSON не из бэкэнд, сделайте некоторые изменения
JSON:
$scope.dataToShow={
tableHeder:["First Name","Age"],
tableData: [{
name:"rahim",
age:23
},
{
name:"karim",
age:24
}]
};
HTML:
<table>
<tr>
<th>Select</th>
<th ng-repeat="header in dataToShow.tableHeader">{{header}}</th>
</tr>
<tr ng-repeat="row in dataToShow.tableData">
<td>
<input type="checkbox">
</td>
<td >{{row.name}}</td>
<td >{{row.age}}</td>
</tr>
</table>
Это определенно будет работать
Попробуйте этот код:
<table>
<tr>
<th>Select</th>
<th>{{dataToShow.tableHeder[0]}}</th>
<th>{{dataToShow.tableHeder[1]}}</th>
</tr>
<tr ng-repeat="row in dataToShow">
<td>
<input type="checkbox">
</td>
<td >{{row.name}}</td>
<td >{{row.age}}</td>
</tr>
</table>
Используя $index
вы можете получить индексный номер цикла.
dataToShow
- это массив. Как вы думаете, dataToShow.tableHeader
будет работать?