确定所有文件在dropzone.js中成功上传的时间

时间:2016-04-28 16:44:11

标签: javascript laravel file-upload dropzone.js

我使用dropzone.js上传到我的网站。上传者是一个模态,我想在所有文件上传成功后自动关闭。

为此,我使用以下代码:

buttonUpload.on("complete", function (file) {

    var remaining = buttonUpload.getRejectedFiles().length + buttonUpload.getQueuedFiles().length + buttonUpload.getUploadingFiles().length

    if (remaining == 0) {
        $("#modal-upload-file").modal('hide');
    }
});

我希望这段代码能够将失败,尚未上传和上传的文件数量加在一起。如果为零,那么模态将关闭。

我能够确定buttonUpload.getRejectedFiles()不包含上传时收到错误的文件。从阅读文档,我看不出有没有办法检查每个文件是否已成功上传,就像我想要的那样。我怎么能这样做?

1 个答案:

答案 0 :(得分:1)

这是我的解决方案。

成功后,文件将从队列中删除:

buttonUpload.on("success", function(file) {
    buttonUpload.removeFile(file);
});

然后,当队列完成时,如果剩下任何文件,则表示没有成功。

buttonUpload.on("queuecomplete", function (file) {
    if (buttonUpload.getAcceptedFiles().length > 0) {
        $("#file-error-warning").slideDown();
    } else {
        $("#modal-upload-file").modal('hide');
    }
});