Обратный вызов jQuery FileUpload для завершения процесса
Я использую плагин Blueimp Jquery File Upload для загрузки файлов. Я хочу сделать что-нибудь, когда закончится процесс загрузки. Поэтому, если я, например, перетаскиваю 4 файла (сразу), я хочу вызвать некоторый код, когда все файлы загружены. Как я могу это сделать?
Я пытался играть с большим количеством обратных вызовов, таких как done
, stop
, progressall
и т. д., но ничего, кажется, не совсем то, что я ищу. Я должен быть уверен, что последний done
был вызван до того, как я запустил свой код.
Я подошел ближе всего с stop
но это, кажется, работает раньше done
иногда. Есть идеи?
1 ответ
ОБНОВЛЕНИЕ - Я понимаю в комментариях, что обратные вызовы, когда срабатывает столько же времени, сколько количество файлов для загрузки. Таким образом, правильные ответы - использовать обратный вызов "всегда" и поставить счетчик. Счет будет увеличиваться каждый раз, когда файл был загружен.
// Variables to put before the .fileUpload and to be init in "add"
var nbElementsToUpload = 0;
var nbElementsUploaded = 0;
.bind('fileuploadalways', function (e, data) {
nbElementsUploaded++;
if(nbElementsToUpload === nbElementsUploaded){
/* All elements uploaded */
}
})
Вы говорите о "последнем" проделанном. Что ты имеешь в виду? Вы вызываете 4 раза за загрузку или один раз с 4 файлами?
У вас есть список функций обратного вызова для плагина. https://github.com/blueimp/jQuery-File-Upload/wiki/Options
Если вы хотите получать успешные запросы на загрузку, используйте готовую https://github.com/blueimp/jQuery-File-Upload/wiki/Options
Если вы хотите захватить все выполненные операции после выполнения (включая ошибки и прерывание), используйте обратный вызов "всегда". https://github.com/blueimp/jQuery-File-Upload/wiki/Options
Я сам использую этот плагин без проблем с "done" и "fail". Пример:
}).on('fileuploaddone', function (e, data) { // code here }) .on('fileuploadfail', function (e, data) { // code here })
Вы можете добавить console.log, чтобы правильно видеть, что происходит и в каком порядке.
С Уважением,