前端JS脚本将网页表格导出为Excel

Posted chenyangsocool

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了前端JS脚本将网页表格导出为Excel相关的知识,希望对你有一定的参考价值。

话不多说,上代码!

<!DOCTYPE>
<html>
    <head>
        <title>Excel Test</title>
    </head>
    
    <body>
        <div style="width:100%;padding:40px;">
            Excel Test
        </div>
        <table id="excel">
            <tr>
                <td>Name</td>
                <td>Age</td>
                <td>Gender</td>
            </tr>
            <tr>
                <td>Young</td>
                <td>24</td>
                <td>Male</td>
            </tr>
            <tr>
                <td>Even</td>
                <td>23</td>
                <td>Female</td>
            </tr>
            <tr>
                <td>Leon</td>
                <td>25</td>
                <td>Male</td>
            </tr>
        </table>
    </body>
    <div style="width:200px;margin:auto;text-align:center;">
        <button onclick="ok()">导出</button>
    </div>
    
    <script>
    var ok = (function () {
        var uri = ‘data:application/vnd.ms-excel;base64,‘,
            template = ‘<html xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:x="urn:schemas-microsoft-com:office:excel" xmlns="http://www.w3.org/TR/REC-html40"><head><!--[if gte mso 9]><xml><x:ExcelWorkbook><x:ExcelWorksheets><x:ExcelWorksheet><x:Name>{worksheet}</x:Name><x:WorksheetOptions><x:DisplayGridlines/></x:WorksheetOptions></x:ExcelWorksheet></x:ExcelWorksheets></x:ExcelWorkbook></xml><![endif]--></head><body><table>{table}</table></body></html>‘,
            base64 = function (s) { return window.btoa(unescape(encodeURIComponent(s))) },
            format = function (s, c) { return s.replace(/{(\w+)}/g, function (m, p) { return c[p]; }) }
        return function (table, name) {
            var tables = document.getElementById(‘excel‘);
            var ctx = { worksheet: name || ‘Worksheet‘, table: tables.innerHTML }
            window.location.href = uri + base64(format(template, ctx));
        }
    })();

    function ExportSupplierMonthlyData() {
        try {
            tableToExcel();
        } catch (err) {
            bootbox.alert(‘没有数据,导出失败‘);
        }
    }
    </script>
</html>

 

以上是关于前端JS脚本将网页表格导出为Excel的主要内容,如果未能解决你的问题,请参考以下文章

使用JS将table表格导出为excel

js如何导出exel文件?

vue项目中如何把表格导出excel表格

js 实现纯前端将数据导出excel两种方式,亲测有效

js 实现纯前端将数据导出excel两种方式,亲测有效

JS实现前端将数据导出excel