我正在尝试读取CSV或Excel文件,以便将其转换为表。现在,为了读取输入文件,我创建了一个类:
输入如下:
<input type="file" class="form-control-file" id="file_upload">现在,为了读取输入文件,我创建了一个类:
class InputReader_tiqet{
constructor(input_id) {
this.inputId=input_id;
this.filetoLoad=document.getElementById("file_upload").files[0];
}
readFileData(){
this.filetoLoad = document.getElementById(this.inputId).files[0];
var fileReader = new FileReader();
fileReader.onload = function(fileLoadedEvent){
this.fileData = fileLoadedEvent.target.result;
};
fileReader.readAsText(this.fileToLoad, "UTF-8");
}
getData(){
return this.fileData;
}
}我按如下方式运行:
inputReader_object= new InputReader_tiqet("file_upload");
$("#file_upload").on('change', function(){
inputReader_object.readFileData();
//clean input field
this.val("");
});当输入文件更改时,我得到以下错误:
Uncaught TypeError: Failed to execute 'readAsText' on 'FileReader': parameter 1 is not of type 'Blob'.发布于 2019-06-06 15:43:58
问题解决: this.fileToLoad而不是this.filetoLoad。
https://stackoverflow.com/questions/56479327
复制相似问题