我想这HTML表格转换:使用如何HTML表格转换为JavaScript对象与jQuery
<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/
感谢
第二个示例是** NOT JSON **。这是一个** JavaScript对象**。太多人已经对JSON的内容感到困惑,所以我会挑剔并指出这一点。 – Aesthete
这很简单,但我必须说我需要一些时间来让它正确:JSON是一种序列化('字符串化')格式。如果它不是字符串,那不是JSON;如果它是一个字符串,它可能会或可能不会解析为有效的JSON。当有人说'一个JSON对象'时,它们可能意味着'一个数据值很容易被序列化为JSON'(所有值都不是这样)。 – flow