首页 > 解决方案 > 在 Web 上导入和读取 EXCEL 文件中的数据

问题描述

我可以从计算机导入一个 excel 文件并读取我在输入中分配的数据吗?

例如,我有 3 个输入区域,1 个用于导入文件 excel,2 个用于分配我要分配的开始和结束数据单元格(A1 - A10)。然后创建一个表格,显示我在我的网站上分配的所有数据单元格。

我在谷歌上阅读了一些资料,但我有点困惑并且不清楚。

标签: javascripthtmljsonexcel

解决方案


如果您想要在浏览器中读取 *.xslx 文件的最简单和最小的方法,那么这个库可能会执行xlsx.core

   function handleFile(e) {
     //Get the files from Upload control
        var files = e.target.files;
        var i, f;
     //Loop through files
        for (i = 0, f = files[i]; i != files.length; ++i) {
            var reader = new FileReader();
            var name = f.name;
            reader.onload = function (e) {
                var data = e.target.result;

                var result;
                var workbook = XLSX.read(data, { type: 'binary' });
                
                var sheet_name_list = workbook.SheetNames;
                sheet_name_list.forEach(function (y) { /* iterate through sheets */
                    //Convert the cell value to Json
                    var roa = XLSX.utils.sheet_to_json(workbook.Sheets[y]);
                    if (roa.length > 0) {
                        result = roa;
                    }
                });
               //Get the result
                console.log(result);
            };
            reader.readAsArrayBuffer(f);
        }
    }

  //Change event to dropdownlist
  $(document).ready(function(){
    $('#files').change(handleFile);
  });
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/xlsx/0.7.7/xlsx.core.min.js"></script>
<input type="file" id="files" name="files"/>


推荐阅读