zoukankan      html  css  js  c++  java
  • js读取excel

    原文:

    本文只是稍有变化,主要是遍历,取行的数据。

     1 <!DOCTYPE html>
     2 <html lang="en">
     3 
     4 <head>
     5     <meta charset="UTF-8">
     6     <title>Excel批量处理</title>
     7     <script src="https://cdn.bootcss.com/jquery/3.2.1/jquery.js"></script>
     8     <script src="https://cdn.bootcss.com/xlsx/0.11.5/xlsx.core.min.js"></script>
     9 </head>
    10 
    11 <body>
    12     <input type="file" id="excel-file">
    13     <script>
    14         //给input标签绑定change事件,一上传选中的.xls文件就会触发该函数
    15         $('#excel-file').change(function (e) {
    16             var files = e.target.files;
    17             var fileReader = new FileReader();
    18             fileReader.onload = function (ev) {
    19 
    20                 try {
    21                     var data = ev.target.result
    22                     var workbook = XLSX.read(data, {
    23                         type: 'binary'
    24                     }) // 以二进制流方式读取得到整份excel表格对象
    25                 } catch (e) {
    26                     console.log('文件类型不正确');
    27                     return;
    28                 }
    29                 // 表格的表格范围,可用于判断表头是否数量是否正确
    30                 var fromTo = '';
    31                 // 遍历每张表读取
    32                 for (var sheet in workbook.Sheets) {
    33                     if (workbook.Sheets.hasOwnProperty(sheet)) {
    34                         fromTo = workbook.Sheets[sheet]['!ref'];
    35                         var rows = XLSX.utils.sheet_to_json(workbook.Sheets[sheet]);
    36                         var bclsPhone, votePhone;
    37                         for (var i = 0; i < rows.length; i++) {
    38                             var row = rows[i];
    39                             var name = row['姓名'];
    40                             var phone = row['手机号'];
    41                             console.log('姓名:', name, '手机号:', phone);
    42                         }
    43                         break; // 如果只取第一张表,就取消注释这行
    44                     }
    45                 }
    46             };
    47             // 以二进制方式打开文件
    48             fileReader.readAsBinaryString(files[0]);
    49         });
    50     </script>
    51 </body>
    52 
    53 </html>

  • 相关阅读:
    韩式英语
    Daily dictation 听课笔记
    words with same pronunciation
    you will need to restart eclipse for the changes to take effect. would you like to restart now?
    glottal stop(britain fountain mountain)
    education 的发音
    第一次用Matlab 的lamada语句
    SVN的switch命令
    String的split
    SVN模型仓库中的资源从一个地方移动到另一个地方的办法(很久才解决)
  • 原文地址:https://www.cnblogs.com/jsper/p/15695129.html
Copyright © 2011-2022 走看看