html excel 在线查看,web在线查看服务器的Excel文件

项目里有个需求要在线查看服务端的Excel文件网上提供的代码不能远程访问服务端的Excel文件,只能同域访问,需要设置IIS跨域。

代码:

function loadRemoteFile(url) {

vueApp.readWorkbookFromRemoteFile(url, function(workbook) {

vueApp.readWorkbook(workbook);

});

}

// 从网络上读取某个excel文件,url必须同域,否则报错

//这里就要在IIS里设置了

functionreadWorkbookFromRemoteFile(url, callback) {

var xhr = new XMLHttpRequest();

xhr.open(‘get‘, url, true);

xhr.responseType = ‘arraybuffer‘;

xhr.onload = function(e) {

if(xhr.status == 200) {

var data = new Uint8Array(xhr.response)

var workbook = XLSX.read(data, {type: ‘array‘});

if(callback) callback(workbook);

}

};

xhr.send();

},

functionreadWorkbook(workbook) {

var sheetNames = workbook.SheetNames; // 工作表名称集合

var worksheet = workbook.Sheets[sheetNames[0]]; // 这里我们只读取第一张sheet

var csv = XLSX.utils.sheet_to_csv(worksheet);

//document.getElementById(‘result‘).innerHTML = this.csv2table(csv);

$("#result").html(this.csv2table(csv));

},

csv2table(csv) {

var html = ‘

var rows = csv.split(‘\n‘);

rows.pop(); // 最后一行没用的

rows.forEach(function(row, idx) {

var columns = row.split(‘,‘);

//columns.unshift(idx + 1); // 添加行索引

// if (idx == 0) { // 添加列索引

// html += ‘

‘;

// for (var i = 0; i < columns.length; i++) {

// html += ‘

‘ + (i == 0 ? ‘‘ : String.fromCharCode(65 + i - 1)) + ‘‘;

// }

// html += ‘

‘;

// }

html += ‘

‘;

columns.forEach(function(column) {

html += ‘

‘ + column + ‘‘;

});

html += ‘

‘;

});

html += ‘

‘;

return html;

},

//调用

loadRemoteFile("http://localhost:18071//Book1.xlsx");

欢迎指教:17718905918

原文:https://www.cnblogs.com/w1-y2-q5/p/12793298.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值