9

我对 Blueimp jQuery-File-Upload 插件 ( https://github.com/blueimp/jQuery-File-Upload )的使用有疑问

有回调函数或替代方法,知道何时完成多个文件的上传?我不想知道每个文件的上传何时完成,而是整个过程何时完成(所有上传完成)。

还有机会知道实际加载了多少文件以及请求了多少文件?

4

4 回答 4

9

请看一下“停止”回调选项:

.bind('fileuploadstop', function (e) {/* ... */})

如果您想跟踪上传的文件,请尝试使用:

$('#fileupload').bind('fileuploaddone', function (e, data) { }

Your collections 数据文件 only contain 1 object each, hence you can track the count of files been uploaded.

于 2013-09-26T10:33:07.213 回答
5

是的,您可以调用它 API 来跟踪多个上传过程的结束:

var $fileInput = $('#fileupload');

$fileInput.on('fileuploaddone', function(e, data) {
    var activeUploads = $fileInput.fileupload('active');
    /*
     * activeUploads starts from the max number of files you are uploading to 1 when the last file has been uploaded.
     * All you have to do is doing a test on it value.
     */
    if(activeUploads == 1) {
        console.info("All uploads done");
        // Your stuff here
    }
}
于 2016-03-25T13:32:11.770 回答
1

就在这些家伙上,您可以使用以下方法获取活跃上传的数量:

var activeUploads = $('#fileuploadForm').fileupload('active');

请参阅: https ://github.com/blueimp/jQuery-File-Upload/wiki/API#retrieving-the-number-of-active-uploads

我打算在总是回调函数上使用一个计数器来与这个变量进行比较。但是停止看起来效果很好。

只是想澄清一下。如果我有多个单一文件上传请求是 stop() 最好的方法?

于 2014-04-17T04:14:21.747 回答
0

就我而言,我遵循了两个答案但没有奏效。

所以禁用 iPV6 使事情正常进行。似乎 iPV6 对所有已完成的上传都产生了误报。

于 2019-12-16T20:43:06.970 回答