如何显示 FileReader 加载进度或加载图标?
How to show FileReader load progress or loading icon?
我有一个文件上传控件,它读取 TXT 文件并用文件内容加载 editBox。代码吹奏适用于文件上传控制的 onChange 事件。但我想在加载大数据时显示加载 gif 图标或沙漏图标。例如。如果我尝试加载大约 130K 行的 3Mb 文件,它需要几秒钟才能出现在 inputUsers 编辑框中,然后仍然加载数据。而此时用户可以单击其他控件或关闭页面。那么当我调用 reader.readAsText(file) 时如何显示加载图标; ???
var fileUploadControl = dojo.query("[id$=':fileUploadControl']")[0];
var file = fileUploadControl.files[0];
var reader = new FileReader();
reader.onload = function(e) {
dojo.query("[id$=':inputUsers']")[0].value = reader.result;
}
reader.readAsText(file);
注意:好吧,当您 copy/paste 将非常大的文本放入多行编辑框时,也会发生同样的情况。我需要在列表加载时显示一些内容
试试这个代码
reader.onloadstart = function(event) {
ShowLoadingBar();
};
reader.onprogress = function(event) {
if (event.lengthComputable) {
if (LoadingBarVisible)
ShowLoadingBar();
AddProgress();
}
};
reader.onloadend = function(event) {
LoadingBarComplete();
};
我有一个文件上传控件,它读取 TXT 文件并用文件内容加载 editBox。代码吹奏适用于文件上传控制的 onChange 事件。但我想在加载大数据时显示加载 gif 图标或沙漏图标。例如。如果我尝试加载大约 130K 行的 3Mb 文件,它需要几秒钟才能出现在 inputUsers 编辑框中,然后仍然加载数据。而此时用户可以单击其他控件或关闭页面。那么当我调用 reader.readAsText(file) 时如何显示加载图标; ???
var fileUploadControl = dojo.query("[id$=':fileUploadControl']")[0];
var file = fileUploadControl.files[0];
var reader = new FileReader();
reader.onload = function(e) {
dojo.query("[id$=':inputUsers']")[0].value = reader.result;
}
reader.readAsText(file);
注意:好吧,当您 copy/paste 将非常大的文本放入多行编辑框时,也会发生同样的情况。我需要在列表加载时显示一些内容
试试这个代码
reader.onloadstart = function(event) {
ShowLoadingBar();
};
reader.onprogress = function(event) {
if (event.lengthComputable) {
if (LoadingBarVisible)
ShowLoadingBar();
AddProgress();
}
};
reader.onloadend = function(event) {
LoadingBarComplete();
};