【发布时间】:2012-01-13 12:15:17
【问题描述】:
我正在尝试读取使用 html 页面上的输入类型文件选择的文件。我已经实现了读取文件的功能,并且可以读取文件内容。但实际问题是文件内容的读取是异步完成的,这允许脚本的其他功能执行。我将读取的文件内容存储在一个数组中。
在移动到其他函数时,数组是空的。当引入延迟时,数组就有了内容。谁能帮我解决这个问题而不会造成延迟?
我读取文件的代码是
var getBinaryDataReader = new FileReader();
getBinaryDataReader.onload = (function(theFile) {
return function(frEvnt)
{
file[fileCnt]=frEvnt.target.result;
}
})(document.forms[formPos].elements[j].files[0]);
getBinaryDataReader.readAsBinaryString(document.forms[formPos].elements[j].files[0]);
提前致谢。
【问题讨论】:
标签: javascript file-io asynchronous synchronized