js导出表格数据为excel并指定数据类型为文本格式,怎么写
时间: 2024-06-10 07:07:24 浏览: 152
sheetjs.txt
你可以使用第三方js库,如FileSaver.js和xlsx.js,示例代码如下:
```javascript
// 导出数据
function exportExcel(data) {
// 创建工作簿
var wb = XLSX.utils.book_new();
// 添加工作表
var ws = XLSX.utils.json_to_sheet(data);
// 设置单元格格式为文本
ws['!cols'] = [{wch: 20, t: 's'}, {wch: 20, t: 's'}, {wch: 20, t: 's'}];
// 将工作表添加到工作簿
XLSX.utils.book_append_sheet(wb, ws, 'Sheet1');
// 保存文件
var fileName = '表格数据.xlsx';
var wbout = XLSX.write(wb, {bookType: 'xlsx', type: 'binary'});
saveAs(new Blob([s2ab(wbout)], {type: 'application/octet-stream'}), fileName);
}
// 将字符串转为 ArrayBuffer
function s2ab(s) {
var buf = new ArrayBuffer(s.length);
var view = new Uint8Array(buf);
for (var i = 0, len = s.length; i < len; i++) {
view[i] = s.charCodeAt(i) & 0xff;
}
return buf;
}
```
其中,`data`为一个数组,包含要导出的数据,`!cols`属性指定单元格格式,`saveAs`函数使用FileSaver.js库保存文件,`s2ab`函数将字符串转为ArrayBuffer。
阅读全文