我一直在寻找一段时间没有成功,以我能想到的所有可能的方式调整事情,但没有运气(我必须承认我对此很陌生)
我正在使用 Greasemonkey,我想将表格保存到 excel 或 scv。
我已经安装了 Datatables,Greasemonkey 中的所有资源图像和 css 都很好,但我现在坚持使用 TableTools 安装导出功能。
我的用户脚本中有这些语句:
// @require http://datatables.net/download/build/jquery.dataTables.js
// @require https://raw.github.com/DataTables/TableTools/master/media/js/ZeroClipboard.js
// @require http://www.datatables.net/download/build/TableTools.js
而且(我不是 100% 确定这样做的方式):
// @resource copy_csv_xls https://github.com/DataTables/TableTools/raw/master/media/swf/copy_csv_xls.swf
然后在我的代码中
$('#GridView1').dataTable( {
"sDom": 'T<"clear">lfrtip',
"oTableTools": {
"sSwfPath": "copy_csv_xls.swf"
}
} );
我还尝试使用如下变量设置路径:
var copy_csv_xls = GM_getResourceURL ("copy_csv_xls");
......也没有运气。
我收到以下错误。编辑。此错误是由于错误的资源链接引起的:我链接到原始 ZeroClipboard 存储库,而它需要指向 TableTools 存储库中包含的 MODIFIED 版本(上面的资源链接在编辑中更改)
ReferenceError: ZeroClipboard_TableTools is not defined
var flash = new ZeroClipboard_TableTools.Client();
关于这个问题的任何线索?
预先感谢您的任何帮助。
编辑(继续)我有一个错误的资源链接(见上面的注释),这部分解决了我的问题。但是我似乎仍然有一个 sSwfPath 问题,下面的代码是最接近工作的东西,但仍然有一些东西不起作用(没有 Flash 插件显示按钮单击没有动作):
$('#GridView1').dataTable( {
"sDom": 'T<"clear">lfrtip',
"oTableTools": {
"sSwfPath": GM_getResourceURL("copy_csv_xls")
}
} );
此外,尽管将资源设置为 copy_csv_xls.swf(而不是 copy_csv_xls_pdf.swf),但我还是显示了 PDF 按钮,这对我来说似乎有点奇怪。