这里只写js代码
提前准备:
第一:导入所需js库
<script src="~/Scripts/0.17.5-xlsx.core.min.js"></script>
说明:这里的数组data就是excel内的数据;
例如:
//调用
var data = [['姓名', '学号', '班级', '分数'], ['张三', '001', '计算机', '99']];
downloadexcelpro(data);
function downloadexcelpro(data) {
// 使用SheetJS创建工作簿
var wb = XLSX.utils.book_new();
// 将数据转换为工作表
var ws = XLSX.utils.aoa_to_sheet(data);
// 将工作表添加到工作簿
XLSX.utils.book_append_sheet(wb, ws, "Sheet1");
// 生成Excel文件的Blob对象
var wbout = XLSX.write(wb, { bookType: 'xlsx', type: 'binary' });
// 创建一个Blob对象,并设置其数据类型
var blob = new Blob([s2ab(wbout)], { type: 'application/octet-stream' });
// 创建一个指向Blob的URL
var url = URL.createObjectURL(blob);
// 创建一个<a>标签并设置属性
var a = document.createElement('a');
a.href = url;
a.download = 'Excel.xlsx';
// 模拟点击事件
a.click();
// 清理URL对象
URL.revokeObjectURL(url);
}
// 将字符串转换为ArrayBuffer
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;
}
完结