2017-07-18 49 views
-1

好日子的特性 '大小',的FileReader錯誤:無法讀取未定義

我有這樣的代碼:

function loadFile() { 
var fileToLoad = document.getElementById("loadMe").files[0]; 
var fileStart = 0; 
var fileEnd = fileToLoad.size - 1; 
var fileReader = new FileReader(); 
fileReader.onload = function(fileLoadedEvent) { 
    var textFromFileLoaded = fileLoadedEvent.target.result; 
    var string = textFromFileLoaded.split('&'); 
    pleaseDoSomethingWithTheContentOfTheFile(textFromFileLoaded); 
}; 
fileReader.readAsText(fileToLoad, "UTF-8"); 
} 

我有一個錯誤:

Uncaught TypeError: Cannot read property 'size' of undefined at loadFile

根據this post有沒有索引[0] ...但是當我刪除它,我仍然有同樣的錯誤。這是來自這個代碼,還是它看起來不錯? 在此先感謝! :)

+0

它是文件[0]或[0]? – error404

+0

您使用的是加載函數 – AvrilAlejandro

+0

爲什麼不首先嚐試硬編碼值 - 讓我們確保'filereader'代碼按預期工作。總是善於簡化問題並從工作基線開始。 –

回答

1

在調用loadFile函數前仔細檢查文件是否被選中。

也使用下面碼校驗大小

if (!fileToLoad) { 
alert('Pleae select file'); 
return; 
} 
+0

謝謝,但我有一個錯誤'未捕獲的TypeError:無法在'FileReader'上執行'readAsText':參數1不是'Blob'類型。 '...我不確定這是一個值添加到代碼。 – EricF

+0

什麼是文件的大小?,而不是使用onload eventm嘗試onloadend,這個鏈接[link](https://stackoverflow.com/questions/33923985/parameter-is-of-type-blob)可能有幫助。 – Immanuel

+0

謝謝!它確實有幫助!我擺脫了錯誤! – EricF

相關問題