2
我需要將多個文件讀入單個函數A.我需要爲它使用FileAPI。 但FileReader執行異步下載。 我可以在不退出或不退出的情況下獲取函數A末尾的所有文件的內容嗎?通過FileAPI上傳文件
我需要將多個文件讀入單個函數A.我需要爲它使用FileAPI。 但FileReader執行異步下載。 我可以在不退出或不退出的情況下獲取函數A末尾的所有文件的內容嗎?通過FileAPI上傳文件
只是很清楚,FileReader
沒有下載任何東西。它是異步讀取文件內容(如它出現在磁盤上)到內存中。
做你想做什麼,只是跟蹤讀文件並調用回調時,他們就大功告成了:
document.querySelector('[type="file"]').change = function(e) {
handleFiles(toArray(e.target.files), function(results) {
// results is an Array containing the FileReader results.
alert('Done!');
});
function toArray(list) {
return Array.prototype.slice.call(list || [], 0);
}
function handleFiles(files, callback) {
var results = [];
files.forEach(function(file, i) {
var reader = new FileReader();
// Closure to capture the file information.
reader.onload = function(e) {
results.push(e.target.result);
if (results.length == files.length) {
callback(results);
}
};
reader.readAsDataURL(file);
});
}
爲您的示例代碼,鏈接十分感謝! – ekruten 2011-12-27 08:07:00