У меня есть элемент управления загрузкой файлов, который читает TXT файл и загружает editBox с содержимым файла. Удар кода отлично подходит для события onChange для управления загрузкой файлов. Но я хочу показать значок загрузки gif или значок песочных часов при загрузке больших данных. Например, если я попытаюсь загрузить файл 3Mb с примерно 130K строк, потребуется несколько секунд, чтобы появиться в поле ввода Inputssers, а затем загрузите данные. Хотя на этот раз пользователи могут щелкнуть другие элементы управления или закрыть страницу. Итак, как я могу показать значок загрузки при вызове reader.readAsText (файл); ???
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);
ПРИМЕЧАНИЕ: хорошо, это происходит, когда вы копируете/вставляете очень большой текст в многострочный editBox. Мне нужно показать что-то, пока список загружается
Попробуйте этот код
reader.onloadstart = function(event) {
ShowLoadingBar();
};
reader.onprogress = function(event) {
if (event.lengthComputable) {
if (LoadingBarVisible)
ShowLoadingBar();
AddProgress();
}
};
reader.onloadend = function(event) {
LoadingBarComplete();
};