Javascript或Flash导出为CSV / Excel
反正有JSON数据导出到CSV / Excel没有任何交互与服务器端? 只使用Javascript? 或Flash? 我目前正在使用ZeroClipboard将值复制到剪贴板,但我想直接从浏览器(FF,铬,IE等…)打开生成的值到Excel中。
谢谢。
从表格到Excel,最干净,最简单的输出是Jquery DataTables Table Tools插件 。 您会得到一个对数据进行sorting,过滤,订购和分页的网格,只需添加几行代码和两个小文件即可导出到Excel , PDF , CSV , 剪贴板和打印机 。
这是所有需要的代码:
$(document).ready( function () { $('#example').dataTable( { "sDom": 'T<"clear">lfrtip', "oTableTools": { "sSwfPath": "/swf/copy_cvs_xls_pdf.swf" } } ); } );
所以,快速部署,不受浏览器限制,不需要服务器端语言,而且最重要的是非常容易理解。 这是双赢的。 但是,它所具有的一个限制是对列进行严格的格式化。
在所有的浏览器和文件大小上,似乎并没有一种万无一失的方式来实现它的客户端。 所有解决scheme似乎都使用下列之一:
- Flash插件(例如:下载):错误,而不是移动兼容
- 数据url:有限的IE支持和大小限制
- HTML5:下载方法在浏览器中不是标准化的。
根据您的使用情况,您可能能够脱离上述任何一种情况。 这里有一些其他的职位上有更多的细节。
- 将HTML表格导出到客户端的csv文件
- 导出到js中的csv
请注意,Ramandeep Singh的这部分答案是不正确的:
所以,快速部署,不受浏览器限制,不需要服务器端语言,而且最重要的是非常容易理解。
如果您查看代码,DataTables会使用Flash插件。 它不适用于移动浏览器(iOS,最近的Android设备没有生根,Windows 8 RT没有黑客或MSFT批准过程)。 以下是他们网站的post: http : //www.datatables.net/forums/discussion/7563/export-to-csvpdf-without-tabletools/p1