无法导出到Excel

时间:2017-05-05 13:51:09

标签: javascript jquery html excel datatables

我创建了一个随机表,并且我一直试图将其导出为ex​​cel,csv,pdf,并且能够复制和打印表格。除了导出到excel之外,我能做所有事情,而且我不确定我忘记添加的文件是什么。这是我的代码:



<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<!DOCTYPE html>
<html>

<head>
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  <script src="jquery.js" type="text/javascript"></script>
  <script src="jquery.dataTables.js" type="text/javascript"></script>
  <script src="dataTables.buttons.js" type="text/javascript"></script>
  <script src="buttons.flash.min.js" type="text/javascript"></script>
  <script src="buttons.html5.min.js" type="text/javascript"></script>
  <script src="buttons.print.min.js" type="text/javascript"></script>
  <script src="flashExport.swf" type="text/javascript"></script>
  <script src="dataTables.buttons.js" type="text/javascript"></script>

  <script type="text/javascript" src="https://cdn.datatables.net/tabletools/2.2.2/swf/copy_csv_xls_pdf.swf"></script>


  <script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/jszip/2.5.0/jszip.min.js"></script>
  <script type="text/javascript" src="https://cdn.rawgit.com/bpampuch/pdfmake/0.1.18/build/pdfmake.min.js"></script>
  <script type="text/javascript" src="https://cdn.rawgit.com/bpampuch/pdfmake/0.1.18/build/vfs_fonts.js"></script>

</head>

<body>
  <table id="demoTable">
    <thead>
      <tr>
        <th> Name</th>
        <th> Program</th>
        <th> Age</th>
        <th> Homecity</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td> A</td>
        <td> Computer Engineering</td>
        <td> 20 Years old</td>
        <td> Mississauga</td>
      </tr>
      <tr>
        <td> B</td>
        <td> Computer Engineering</td>
        <td> 19 Years old</td>
        <td> Vancouver</td>
      </tr>
      <tr>
        <td> C</td>
        <td> Computer Engineering</td>
        <td> 19 Years old</td>
        <td> Vancouver</td>
      </tr>
      <tr>
        <td> D</td>
        <td> Computer Engineering</td>
        <td> 19 years old</td>
        <td> Ottawa</td>

      </tr>
    </tbody>
  </table>
</body>


<script type="text/javascript">
  $(function() {
    $("#demoTable").DataTable({
      dom: 'Bfrtip',
      buttons: ['csv', 'excel', 'pdf', 'copy', 'print']
    });
  })
</script>
&#13;
&#13;
&#13;

提前感谢您帮助我。

1 个答案:

答案 0 :(得分:0)

<html>之外的jQuery脚本标记可能会导致其他资源加载出现问题。您还需要确保包含<script>初始化/配置的DataTable()位于<body>标记内,或者加载为<body><head>中的单独文件。我确保通过检查您的实例上的源,您可以看到从本地文件系统/服务器成功加载的每个文件。

此外,我将重新评估文件类型为<script>的{​​{1}}资源,工作示例仅使用.swf资源。如果您需要包含.js个文件,则可能需要嵌入它们。请参阅此question

我创建了一个工作示例here,包括导出到excel。

希望这有帮助!