gpt4 book ai didi

jquery - 如何为jQuery Datatable设置标题部分excel导出第一行的高度

转载 作者:行者123 更新时间:2023-12-04 09:02:21 26 4
gpt4 key购买 nike

我正在使用 jQuery DataTable 导出 excel 表。我需要设置包含 2 行标题的第一行的高度。但是当我导出 Excel 工作表时,标题显示在一行中,直到我手动单击该行。当我单击显示在 2 行中的行标题时。所以我需要为这个标题行设置高度。
我试过下面的代码,但它不起作用。谁能帮我?

[{
extend: 'excelHtml5',
title: "May 1st test: " + '\n' + "Secound text ";
customize: function (xlsx) {
var sheet = xlsx.xl.worksheets['sheet1.xml'];
$('row, sheet').attr('ss:Height', '100');
//$('row:first c', sheet).attr('s', '80');
},
}]

最佳答案

要在标题中显示这两行,您需要

  • 增加标题行的高度。
  • 将单元格样式换行文本标志设置为 true。

  • 可以通过以下方式实现
        extend: 'excelHtml5',
    title: "May 1st test: " + '\r\n' + "Second text ",
    customize: function(xlsx) {
    var sheet = xlsx.xl.worksheets['sheet1.xml'];
    var style = xlsx.xl['styles.xml'];
    // set wrapText to true for horizontal alignment center style (assume the header is centered)
    $('xf', style).find("alignment[horizontal='center']").attr("wrapText", "1");
    // set height
    $('row', sheet).first().attr('ht', '40').attr('customHeight', "1");
    }
    由于 Download in Sandboxed Iframes (removed) ,代码片段中的按钮不起作用,您可以将以下代码复制到一个 html 文件中,并用浏览器打开文件查看效果。

    <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
    <link rel="stylesheet" type="text/css" href="https://cdn.datatables.net/v/dt/jszip-2.5.0/dt-1.10.21/b-1.6.2/b-flash-1.6.2/b-html5-1.6.2/b-print-1.6.2/datatables.min.css" />

    <script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/pdfmake/0.1.36/vfs_fonts.js"></script>
    <script type="text/javascript" src="https://cdn.datatables.net/v/dt/jszip-2.5.0/dt-1.10.21/b-1.6.2/b-flash-1.6.2/b-html5-1.6.2/b-print-1.6.2/datatables.min.js"></script>

    <script type="text/javascript">
    $(document).ready(function() {
    $('#dataTable').DataTable({
    dom: 'Bfrtip',
    buttons: [{
    extend: 'excelHtml5',
    title: "May 1st test: " + '\r\n' + "Second text ",
    customize: function(xlsx) {
    var sheet = xlsx.xl.worksheets['sheet1.xml'];
    var style = xlsx.xl['styles.xml'];
    // set wrapText to true for horizontal alignment center style (assume the header is centered)
    $('xf', style).find("alignment[horizontal='center']").attr("wrapText", "1");
    // set height
    $('row', sheet).first().attr('ht', '40').attr('customHeight', "1");
    },
    }]
    });
    });
    </script>

    <table id="dataTable" cellspacing="0" width="auto">
    <thead>
    <tr>
    <th>Name</th>
    <th>Position</th>
    <th>Office</th>
    <th>Age</th>
    <th>Start date</th>
    <th>Salary</th>
    </tr>
    </thead>

    <tbody>
    <tr>
    <td>Tiger Nixon</td>
    <td>System Architect</td>
    <td>Edinburgh</td>
    <td>61</td>
    <td>2011/04/25</td>
    <td>$320,800</td>
    </tr>
    <tr>
    <td>Garrett Winters</td>
    <td>Accountant</td>
    <td>Tokyo</td>
    <td>63</td>
    <td>2011/07/25</td>
    <td>$170,750</td>
    </tr>
    </tbody>
    </table>

    引用:
    Row properties
    Alignment Wrap Text property

    关于jquery - 如何为jQuery Datatable设置标题部分excel导出第一行的高度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63535766/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com