JS 使用xlsx.core.js 進行數據導出到excel(兩種方法)


 

歐巴醬 2019-07-30 15:46:46 1469 收藏
版權
使用前都需導入 xlsx.core.js 等系列組件;

1.使用table_to_sheet():

var ws = XLSX.utils.table_to_sheet(document.getElementById("conTable"));

var wb = new XLSX.utils.book_new();
XLSX.utils.book_append_sheet(wb, ws, "xx1");
XLSX.writeFile(wb, "sheet.xlsx");
2.使用json_to_sheet():

var data = JSON.parse(result.data);
var ws = XLSX.utils.json_to_sheet(data);
var wb = new XLSX.utils.book_new();
const wopts = { bookType: 'xlsx', bookSST: false, type: 'binary' };

downloadExl(data);
function s2ab(s) {
var buf = new ArrayBuffer(s.length);
var view = new Uint8Array(buf);
for (var i = 0; i != s.length; ++i) view[i] = s.charCodeAt(i) & 0xFF;
return buf;
}
function saveAs(obj, fileName) {//自定義下載文件方式
var tmpa = document.createElement("a");
tmpa.download = fileName || "下載";
tmpa.href = URL.createObjectURL(obj); //綁定a標簽
tmpa.click(); //模擬點擊實現下載
setTimeout(function () { //延時釋放
URL.revokeObjectURL(obj); //用URL.revokeObjectURL()來釋放這個object URL
}, 100);
}
function downloadExl(data) {
const wb = { SheetNames: ['Sheet1'], Sheets: {}, Props: {} };
wb.Sheets['Sheet1'] = XLSX.utils.json_to_sheet(data);//通過json_to_sheet轉成單頁(Sheet)數據
saveAs(new Blob([s2ab(XLSX.write(wb, wopts))], { type: "application/octet-stream" }), "這里是下載的文件名" + '.' + (wopts.bookType == "biff2" ? "xls" : wopts.bookType));

————————————————
版權聲明:本文為CSDN博主「歐巴醬」的原創文章,遵循CC 4.0 BY-SA版權協議,轉載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/qq_36894527/article/details/97788979


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM