xlsx.full.min.js实现xlsx的导入与导出

1. json转xlsx

<html lang="zh">
    <head>
        <script src="https://cdn.bootcdn.net/ajax/libs/jquery/3.6.3/jquery.min.js"></script>
        <script src="https://cdn.bootcdn.net/ajax/libs/xlsx/0.18.5/xlsx.full.min.js"></script>
    </head>
        <input id="test_button" type="button" value="导出表格"></input>
    </body>
    <script>
        function exportXlsx(data) {
            const book = XLSX.utils.book_new();
            const sheet = XLSX.utils.json_to_sheet(data);
            XLSX.utils.book_append_sheet(book, sheet);
            XLSX.writeFile(book, 'test.xlsx');
        }
        $("input[id='test_button']").click(function(){
            var test_data = [
                {
                    "id": "1",
                    "name": "张三",
                },
                {
                    "id": "2",
                    "name": "李四",
                }
            ]
            exportXlsx(test_data);
        });
    </script>
</html>

效果如下
image

2. xlsx转json

<html lang="zh">
    <head>
        <script src="https://cdn.bootcdn.net/ajax/libs/jquery/3.6.3/jquery.min.js"></script>
        <script src="https://cdn.bootcdn.net/ajax/libs/xlsx/0.18.5/xlsx.full.min.js"></script>
    </head>
        <input id="test_button" type="file" value="导入表格"></input>
    </body>
    <script>
        function importXlsx(file) {
            const reader = new FileReader();
            reader.onload = function(event) {
                const data = event.target.result;
                const workbook = XLSX.read(data, { type: "binary" });
                const sheet = workbook.Sheets[workbook.SheetNames[0]]
                const json = XLSX.utils.sheet_to_json(sheet);
                console.log(json);
            }
            reader.readAsBinaryString(file);
        }
        $("input[id='test_button']").change(function(){
            importXlsx(this.files[0]);
        });
    </script>
</html>

效果如下
image

posted @   wstong  阅读(2327)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
点击右上角即可分享
微信分享提示