首頁  >  文章  >  web前端  >  js-xlsx讀取xlsx檔案的非同步詳解

js-xlsx讀取xlsx檔案的非同步詳解

php中世界最好的语言
php中世界最好的语言原創
2018-03-12 11:54:132986瀏覽

這次帶給大家js-xlsx讀取xlsx檔的非同步詳解,使用js-xlsx讀取xlsx檔非同步操作的注意事項有哪些,下面就是實戰案例,一起來看一下。

請求主要函數:

function fetchAB(url, cb) {            var xhr = new XMLHttpRequest;
            xhr.open('get', url, true);
            xhr.responseType = 'arraybuffer';
            xhr.onload = cb;
            xhr.send();
        };

結合js-xlsx讀取xlsx檔案線上範例:

<!DOCTYPE html><html><head>
    <meta charset="UTF-8">
    <title></title>
    <script src="http://oss.sheetjs.com/js-xlsx/xlsx.full.min.js"></script>
    <script>
        function fetchAB(url, cb) {            var xhr = new XMLHttpRequest;
            xhr.open('get', url, true);
            xhr.responseType = 'arraybuffer';
            xhr.onload = cb;
            xhr.send();
        };    </script>
    <script>
        var wb;        var url = ""
        function importf() {//导入
            url = document.getElementById("url").value;            if (url) {
                fetchAB(url, function () {                    if (this.status == 200) {
                        wb = XLSX.read(btoa(fixdata(this.response)), {//手动转化
                            type: 'base64'
                        });                        document.getElementById("demo").innerHTML = JSON.stringify(XLSX.utils.sheet_to_json(wb.Sheets[wb.SheetNames[0]]));
                    }
                });
            }
        }        function fixdata(data) { 
            var o = "",
                l = 0,
                w = 10240;            for (; l < data.byteLength / w; ++l) o += String.fromCharCode.apply(null, new Uint8Array(data.slice(l * w, l * w + w)));
            o += String.fromCharCode.apply(null, new Uint8Array(data.slice(l * w)));            return o;
        }    </script></head><body>
    <input type="text" id="url" />
    <input type="button" onclick="importf()" value="读取" />
    <div id="demo"></div></body></html>

相信看了本文案例你已經掌握了方法,更多精彩請關注php中文網其它相關文章!

相關閱讀:

js的隨機字串正規方法([A~Z],[a~z],[0~9])

#用JS做的點選複製效果

瀏覽器html程式碼快速預覽小工具

#

以上是js-xlsx讀取xlsx檔案的非同步詳解的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn