В скрипте не рабоает функция fileReader.onload
В чем косяк, понять не могу. Код работает только до строки fileReader.onload = function (event) {
код: <let selectedFile; document.getElementById("file-input").addEventListener("change", function (event) { selectedFile = event.target.files[0]; }); document.getElementById("upload__image").addEventListener("click", function () { if (selectedFile) { const fileReader = new FileReader(); fileReader.onload = function (event) { var data = event.target.result; var workbook = XLSX.read(data, { type: "binary" }); workbook.SheetNames.forEach(sheet => { let rowObject = XLSX.utils.sheet_to_row_object_array( workbook.Sheets[sheet] ); let jsObject = JSON.parse(JSON.stringify(rowObject)); console.log(jsObject); return jsObject; }); }; }; });> |
Для начала отформатируй код:
[js run]<код>[/js] А проблема у тебя в том что ты повесил слушатель на событие загрузки(onload), но саму загрузку то не запустил. Тебе после этого надо дописать FileReader.readAsЧтоТо(selectedFile); |
АлександрJS,
Пожалуйста, отформатируйте свой код! Для этого его можно заключить в специальные теги: js/css/html и т.п., например: [html run] ... минимальный код страницы с вашей проблемой [/html] О том, как вставить в сообщение исполняемый javascript и html-код, а также о дополнительных возможностях форматирования - читайте http://javascript.ru/formatting. |
Точно! Во тупой, даже не заметил - полдня пропарил. Добавил соотвествующую команду и все заработало. fileReader.readAsBinaryString(selectedFile);
Спасибо, святой человек!) |
Часовой пояс GMT +3, время: 16:47. |