Я пытаюсь преобразовать эту таблицу HTML:
Код:
<table id="students" border="1">
<thead>
<tr>
<th>Name</th>
<th>Age</th>
<th>Grade</th>
</tr>
</thead>
<tbody>
<tr class="student">
<td>Oscar</td>
<td>23</td>
<td>16.5</td>
</tr>
<tr class="student">
<td>Antonio</td>
<td>32</td>
<td>14</td>
</tr>
<tr class="student">
<td>Jessica</td>
<td>21</td>
<td>19</td>
</tr>
</tbody>
</table>
В javascript-объект с использованием jQuery:
var tbl = $('table#students tr').map(function() {
return $(this).find('td').map(function() {
return $(this).text();
}).get();
}).get();
Вышеприведенный код выведет следующий массив:
["Oscar", "23", "16.5", "Antonio", "32", "14", "Jessica", "21", "19"]
Все хорошо на этом этапе, но как я могу сделать, если я хочу, чтобы объекты javascript внутри массива имели следующую структуру:
[{id:1, name: "Oscar", age: 23, grade: 16.5}, {id:2, name: "Antonio", age: 32, grade: 14}, {id:3, name: "Jessica", age: 21, grade: 19}]
Просто чтобы быть более конкретным...
-
id
получается изtr
- Значения
name
,age
иgrade
получаются из каждой строки
Я сделал это jsfiddle для проверки:
http://jsfiddle.net/oscarj24/ptVDm/
Спасибо