0
我想将导出的所有结果数据导出为CSV文件,截至目前只有当前页面数据保存在jQuery数据表中的CSV文件中如何使用jQuery数据表插件将所有数据导出为CSV文件
我想将导出的所有结果数据导出为CSV文件,截至目前只有当前页面数据保存在jQuery数据表中的CSV文件中如何使用jQuery数据表插件将所有数据导出为CSV文件
我不确定你想如何“导出”数据,但是你可以用jQuery中的each()方便地创建csv内容。鉴于你的问题表明你正在使用jQuery数据表,你已经有了jQuery导入。
下面是一个简单的表格和将内容解析为csv格式的代码。有一个textarea,其值我们设置最终的“导出”数据。
<table id="tbl">
<tr>
<th>Col1</th><th>Col2</th><th>Col3</th>
</tr>
<tr>
<td>eggs</td><td>bacon</td><td>milk</td>
</tr>
<tr>
<td>free</td><td>tasty</td><td>food</td>
</tr>
</table>
<textarea id="output"></textarea>
<script>
$("#output").html(getTableData($("#tbl")));
function getTableData(table) {
var data = [];
table.find('tr').each(function (rowIndex, r) {
var cols = [];
$(this).find('th,td').each(function (colIndex, c) {
cols.push(c.textContent);
});
data.push(cols + "\n");
});
return data;
}
</script>
注:我们使用.html()
上textarea的,而不是.val()
,以避免对除第一行无关,前置逗号。
有一个特殊的DataTables插件,可以为你处理导出 - https://datatables.net/extensions/tabletools/ - 你使用它吗? – xmojmr 2014-09-01 17:52:31