當前位置:
首頁 >
前端技术
> javascript
>内容正文
javascript
使用JavaScript实现纯前端读取excel文件并与后台进行交互
生活随笔
收集整理的這篇文章主要介紹了
使用JavaScript实现纯前端读取excel文件并与后台进行交互
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
下載SheetJS文件
GitHub下載地址:https://github.com/SheetJS/sheetjs
下載之后打開其中的dist文件目錄,能看到其中有xlsx.core.min.js和xlsx.full.min.js兩個JS文件,使用其中一個文件就行,一般情況下使用xlsx.core.min.js就可以了。
此處以xlsx.core.min.js為例
具體用法如下:
1.首先在HTML中定義如下
<input type="file" id="inputfilename"> <!--選擇文件的input--><button onclick="readWorkbookFromLocalFile()">讀取Excel表格</button> <!--讀取文件的按鈕--><div id="result"></div> <!--顯示所讀取excel的區域-->2. 引入JS
<script src="../../js/xlsx.core.min.js"></script>3. 使用XLSX.read方法讀取本地excel文件
function readWorkbookFromLocalFile() {var file = document.getElementById('inputfilename').files[0];if (file) {var reader = new FileReader();reader.onload = function (e) {var data = e.target.result;var workbook = XLSX.read(data, { //XLSX.read()方法會返回一個workbook 對象type: 'binary'});readWorkbook(workbook);};reader.readAsBinaryString(file);} else {alert('請先選擇文件');}}4. 得到exce文件的csv和json格式
得到csv格式是為了在網頁中顯示讀取到的表格
得到json格式是為了與后臺進行數據交互
5. 將csv轉換成簡單的表格,會忽略單元格合并,在第一行和第一列追加類似excel的索引
function csv2table(csv) {var html = '<table>';var rows = csv.split('\n');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; }到這里就能夠實現通過SheetJS在頁面中顯示從本地讀取到的excel文件了,也能夠拿到想要與后臺進行交互時的標準json數據格式,最后只需要發送Ajax與后臺進行交互就OK拉!
參考文檔 https://www.cnblogs.com/liuxianan/p/js-excel.html
總結
以上是生活随笔為你收集整理的使用JavaScript实现纯前端读取excel文件并与后台进行交互的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: RDKit 记录
- 下一篇: hbase命令snapshot快照使用