Using jquery
let url = "test.xlsx", oReq = new XMLHttpRequest(); oReq.open("GET", url, true); oReq.responseType = "arraybuffer"; oReq.onload = (e) => { let arraybuffer = oReq.response, data = new Uint8Array(arraybuffer), arr = []; for (let i = 0; i != data.length; ++i) arr[i] = String.fromCharCode(data[i]); let bstr = arr.join(""), workbook = XLSX.read(bstr, { type: "binary" }), first_sheet_name = workbook.SheetNames[0], worksheet = workbook.Sheets[first_sheet_name], obj = XLSX.utils.sheet_to_json(worksheet); }; oReq.send();
Did so
function ajaxRequest() { $.get('test.xlsx', (response) => { let data = new Uint8Array(response), arr = []; for (let i = 0; i != data.length; ++i) arr[i] = String.fromCharCode(data[i]); let bstr = arr.join(""), workbook = XLSX.read(bstr, { type: "binary" }), first_sheet_name = workbook.SheetNames[0], worksheet = workbook.Sheets[first_sheet_name], obj = XLSX.utils.sheet_to_json(worksheet); }); }; ajaxRequest();
But console.log(worksheet);
sees an empty object.
jquery
- InDevXdata = new ...
delete and wrap in$.get(url, function(response){ ..... })
.send
at the end also delete - teran