Если вы хотите использовать пользовательский загрузчик и загружать по одному файлу за раз, автоматическая загрузка не выполняется, и последний добавленный файл становится новым файлом.
uploader.bind('FilesAdded', function(up, files) {
// Clear the HTML
$('#plupload-files').html('');
// Plup does not offer before file added event
if (up.files.length > 1) {
up.splice(0, up.files.length);
up.addFile(files[0])
return;
}
// $.each(files, function(){....
}
Мы объединяем весь массив, потому что plup уже добавляет все файлы в очередь, и если вы объедините очередь как принятый ответ, вы фактически добавите один файл каждый раз, когда пользователь пытается добавить файлы, и если они пытаются добавить новый file в единственном числе, он сохранит старый файл в позиции [0] в массиве файлов
Затем мы добавляем первый файл из файлов, которые они пытались добавить. Таким образом, в очереди остается только один файл, и это всегда первый файл в последней группе файлов, которые они пытались добавить.
т.
Перетащите в plupload 'file1.jpg', 'file2.jpg', 'file3.jpg'
очистить всю очередь, добавить обратно 'file1.jpg'
Перетащите в plupload 'file4.jpg', 'file5.jpg', 'file6.jpg'
очистить всю очередь, добавить обратно 'file4.jpg'
Перетащите в plupload 'file99.jpg'
очистить всю очередь, добавить обратно 'file99.jpg'
Это позволяет вам управлять пользовательскими подключениями, если вы хотите загружать только один файл за раз. Как указано, другие ответы работают только один раз или с автоматическим началом загрузки.