zoukankan      html  css  js  c++  java
  • web在线查看服务器的Excel文件

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

    代码:

    function loadRemoteFile(url) {

    vueApp.readWorkbookFromRemoteFile(url, function(workbook) {
    vueApp.readWorkbook(workbook);
    });
    }

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

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

    function  readWorkbookFromRemoteFile(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(); 
    },

    function  readWorkbook(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 = '<table>';
    var rows = csv.split(' ');
    rows.pop(); // 最后一行没用的
    rows.forEach(function(row, idx) {
    var columns = row.split(',');
    //columns.unshift(idx + 1); // 添加行索引
    // if (idx == 0) { // 添加列索引
    // html += '<tr>';
    // for (var i = 0; i < columns.length; i++) {
    // html += '<th>' + (i == 0 ? '' : String.fromCharCode(65 + i - 1)) + '</th>';
    // }
    // html += '</tr>';
    // }
    html += '<tr>';
    columns.forEach(function(column) {
    html += '<td>' + column + '</td>';
    });
    html += '</tr>';
    });
    html += '</table>';
    return html;
    },

    //调用

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

     web查看Excel具体代码路径---------http://blog.haoji.me/js-excel.html

    IIS跨域配置-------https://blog.csdn.net/changhong_sd/article/details/103693148

     

     欢迎指教:17718905918

  • 相关阅读:
    20200924-4 代码规范,结对要求
    20200924-2 功能测试
    20200917-1 每周例行报告
    20200917-3 白名单
    20200917-2 词频统计 已更新附加题!
    20200910-1 每周例行报告
    20200924-2功能测试
    20200924-1每周例行报告
    20200924-3单元测试
    20200924-5 四则运算,结对
  • 原文地址:https://www.cnblogs.com/w1-y2-q5/p/12793298.html
Copyright © 2011-2022 走看看