使用Table2excel插件将自定义表HTML下载到Excel

时间:2019-02-14 13:31:50

标签: excel download

我正在尝试使用table2excel插件下载表HTML。

我可以使用以下代码下载表中的所有列:

<table id="empTable">
    <tr>
        <th>ID</th>
        <th>Name</th>
        <th>Age</th>
        <th>Address</th>
    </tr>
    <tr>
        <td>01</td>
        <td>Alpha</td>
        <td>37</td>
        <td>Bandung</td>
    </tr>
    <tr>
        <td>02</td>
        <td>Bravo</td>
        <td>29</td>
        <td>Bali</td>
    </tr>
</table>

<script>
 $(document).ready(function () {
    $("#empTable").table2excel({
        filename: "Employees.xls"
    });
 });
</script>

我成功下载了包含所有列(ID,名称,年龄,地址)的表格。如何下载列表的excel部分?我只想下载没有列地址的列ID,名称和年龄。我该怎么办?

1 个答案:

答案 0 :(得分:1)

table2excel可以选择排除包含指定类的单元格。在下面的示例中,我将noExport类添加到我不想导出的单元格中。创建文件时将忽略它们。

$(document).ready(function() {
    $('#export').on('click', function(e){
        $("#table").table2excel({
            exclude: ".noExport",
            name: "Data",
            filename: "Workbook",
        });
    });
});
<script src="//ajax.googleapis.com/ajax/libs/jquery/2.2.4/jquery.min.js"></script>
<script src="//cdn.rawgit.com/rainabba/jquery-table2excel/1.1.0/dist/jquery.table2excel.min.js"></script>
<button id="export">Export</button>
<table id="table">
  <thead>
    <tr>
      <td class="noExport">This cell won't be exported.</td>
      <td>This cell will get exported.</td>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>Lorem</td>
      <td class="noExport">Ipsum</td>
    </tr>
    <tr>
      <td>Foo</td>
      <td>Bar</td>
    </tr>
  </tbody>
</table>

诚然,这对于整个专栏而言可能很乏味。幸运的是,一个GitHub用户对table2excel进行了分叉,并进行了修改,允许您指定要导出的列。

请参阅:https://github.com/davidkonrad/table2excel

使用他的table2excel版本,看起来像这样:

$(document).ready(function() {
    $('#export').on('click', function(e){
        $("#table").table2excel({
            exclude: ".noExport",
            name: "Data",
            filename: "Workbook",
            columns: [0, 1, 2] // export first three columns
        });
    });
});

请注意,在某些版本的Excel中打开table2excel工作簿似乎确实存在错误。您可能会收到警告,提示文件扩展名不匹配。但是,如果您忽略此警告,则该警告应立即加载到Excel中。