0

我有一个带有引导样式的 JQuery 数据表。我开始使用按钮扩展添加导出到 excel 的功能,我正在使用 Html5 按钮扩展。我遇到了一个问题,即 excel 文件已损坏,因为我的表中有一个包含逗号分隔的链接列表的列,如下所示:

<tr>
     <td>A text column</td> 
     <td>
      <a class="modal-link" 
      data-modal-title="Title 1" 
      data-modal-url="/link1" 
      href="/link1" 
      title="Title 1">Link 1</a>, 
      <a class="modal-link" 
      data-modal-title="Title 2" 
      data-modal-url="/link2" 
      href="/link2" 
      title="Title 2">Link 2</a>
    </td>  
    ...
</tr>

以前有人遇到过这个问题吗?

有谁知道我如何编写一个函数来去除 datatable/html5 按钮中单元格的 html?

谢谢,

4

1 回答 1

1

使用 exportOptions -> 格式 -> 正文。检查数据是否为 ​​html,如果是,则返回文本,否则数据修复问题。

$.extend(true, $.fn.dataTable.defaults, {
    aLengthMenu: [[25, 50, 100, -1], [25, 50, 100, "All"]], // Setup number of entries per page
    iDisplayLength: 25, // Setup default number of entries per page,
    buttons: [
                {
                    extend: 'excelHtml5',
                    title: 'Excel Export',
                    extension: '.xlsx',
                    text: 'Export to Excel',
                     exportOptions: {
                        format: {
                            body: function ( data, column, row ) {                              
                                //if it is html, return the text of the html instead of html
                                if (/<\/?[^>]*>/.test(data)) {                                    
                                    return $(data).text();
                                } else {
                                    return data;
                                }                                                                
                            }
                        }
                    }
                }
    ],
    dom: 'Bfrtip'
});
于 2016-02-24T17:52:46.163 回答