我需要获取表行并转换为JSON.
有任何想法吗?我在这里有这个代码,但它不起作用.
function tableToJSON(tableID) {
return $(tableID + " tr").map(function (row) {
return row.descendants().pluck("innerHTML");
}).toJSON();
}
Run Code Online (Sandbox Code Playgroud)
sla*_*dau 19
function tableToJson(table) {
var data = [];
// first row needs to be headers
var headers = [];
for (var i=0; i<table.rows[0].cells.length; i++) {
headers[i] = table.rows[0].cells[i].innerHTML.toLowerCase().replace(/ /gi,'');
}
// go through cells
for (var i=1; i<table.rows.length; i++) {
var tableRow = table.rows[i];
var rowData = {};
for (var j=0; j<tableRow.cells.length; j++) {
rowData[ headers[j] ] = tableRow.cells[j].innerHTML;
}
data.push(rowData);
}
return data;
}
Run Code Online (Sandbox Code Playgroud)
我对上述所有解决方案都不满意,最终编写了自己的 jQuery 插件来完成此任务。它与解决方案非常相似,但接受多个选项来自定义结果,例如忽略隐藏行、覆盖列名称和覆盖单元格值
如果您更需要这个插件,可以在这里找到该插件以及一些示例: https: //github.com/lightswitch05/table-to-json
| 归档时间: |
|
| 查看次数: |
45640 次 |
| 最近记录: |