JS直接将页面的内容作为excel下载

  做个笔记,后续自己可以看看,将页面的一个Table直接输出为excel文件,亲测有用。

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
//下载excel
       function downloadExcel() {
           var uri = 'data:application/vnd.ms-excel;base64,';
           var 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">
                   <meta http-equiv="content-type" content="application/vnd.ms-excel; charset=UTF-8">
                   <head><!--[if gte mso 9]><xml><x:ExcelWorkbook><x:ExcelWorksheets><x:ExcelWorksheet>
                   <x:Name>sheet1</x:Name>
                   <x:WorksheetOptions><x:DisplayGridlines/></x:WorksheetOptions></x:ExcelWorksheet>
                   </x:ExcelWorksheets></x:ExcelWorkbook></xml><![endif]-->
                   </head><body><table>`+ $('#idData').html() + `</table></body></html>`;
           window.location.href = uri + window.btoa(unescape(encodeURIComponent(template)));
       };

  

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
function download2() {
            var uri = 'data:application/vnd.ms-excel;base64,';
            var 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">
                   <meta http-equiv="content-type" content="application/vnd.ms-excel; charset=UTF-8">
                   <meta http-equiv="content-disposition" content="attachment;filename=123.xlsx">
                   <head><!--[if gte mso 9]><xml><x:ExcelWorkbook><x:ExcelWorksheets><x:ExcelWorksheet>
                   <x:Name>sheet1</x:Name>
                   <x:WorksheetOptions><x:DisplayGridlines/></x:WorksheetOptions></x:ExcelWorksheet>
                   </x:ExcelWorksheets></x:ExcelWorkbook></xml><![endif]-->
                   </head><body>`+ $('#rptData').html() + `</body></html>`;
 
             
            var a = document.createElement('a')
            a.download = "123.xls";
            a.href = uri + window.btoa(unescape(encodeURIComponent(template)));
            document.body.appendChild(a)
            a.click();
            document.body.removeChild(a)
        }

  

posted @   老飞飞  阅读(214)  评论(1编辑  收藏  举报
相关博文:
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(1)
点击右上角即可分享
微信分享提示