Jquery数据表 - Excel导出不起作用

use*_*474 3 jquery datatables

我在datatable中实现了excel导出.已将tabletool引用和SWF放入我的本地工作区.

var oTable = $("#products").dataTable({
       "aaData": newarray,
       "bProcessing": true,
       "bDeferRender": true,
       "bFilter": false,
       "bRetrieve": true,
       "bPaginate": true,
       "bJQueryUI": true,
       "sPaginationType": "two_button",
       "sDom": '<"H"Tfr>t<"F"ip>',
       "oTableTools": {
            "sSwfPath": "../swf/copy_csv_xls.swf",
             "aButtons": [ "xls" ]
        },
       "bSort": true,
Run Code Online (Sandbox Code Playgroud)

它只是在表头中显示导出选项,但没有动作,什么也没发生.我有什么步骤需要做吗?如果我在没有提及oTableTools的情况下保持空白,打印选项工作正常,所以我的环境运行良好.

请告知我没有做哪一步?

谢谢

Ste*_*fan 9

我最终发现导出到Excel还会创建.csv文件(可以通过Excel读取)的原因是因为它是这样做的.这不是一个错误,它还没有实现 - 请参阅此处的讨论:http://datatables.net/forums/discussion/4043/export-to-excel-wrong-extention-.csv./p1

另一个问题是sSwfPath对于正确指定很重要.当使用完整服务器路径而不是相对URL时,它似乎工作得最好?使用本地文件的替代方法是使用http://datatables.net/release-datatables/extras/TableTools/media/swf/copy_csv_x??ls_pdf.swf.更新:此链接不再存在,我还无法找到替换链接.

删除Excel按钮:

'oTableTools' : {
    'aButtons': ['copy', 'csv', 'pdf', 'print']
};
Run Code Online (Sandbox Code Playgroud)

按钮选项:

http://datatables.net/extras/tabletools/button_options

按钮图标和jQuery UI:DataTables TableTools图像不能与ThemeRoller一起使用

为按钮创建图标/位置的可能方法可能是:

  1. 为按钮指定CSS背景图像和位置
  2. 使用<img src='..>一键sButtonText财产内
  3. 使用jQuery更改html('<img ..>')按钮