3

I have a problem. I have autoUpload set to false within $('element').fineUploaderDnd();

I can drag and drop files just fine. However, I can't seem to figure out how to manually trigger the upload. I have tried both of the following:

var uploader = $('#droppable').fineUploaderDnd(/*{ ... }*/);
uploader.fineUploaderDnd('uploadStoredFiles'); //Doesnt work
uploader.fineUploaderDnd('addFiles', handleUploads.fineUploaderFiles); //Also doesnt work

Note that handleUploads.fineUploaderFiles is an array of the 'File' objects the plugin returns to me .on('processingDroppedFilesComplete')

They both give me errors saying they don't support that. I've also tried various methods of using both the Dnd thing for drag/drop and the normal jquery fineUploader for 'addFiles' but that also doesn't seem to work.

What am I missing?

4

1 回答 1

2

这些行不起作用:

uploader.fineUploaderDnd('uploadStoredFiles'); //Doesnt work
uploader.fineUploaderDnd('addFiles', handleUploads.fineUploaderFiles); //Also doesnt work

因为你只能在 FineUploader 的实例上调用uploadStoredFiles和方法。addFiles看来您是在 DnD 模块的实例上调用这些方法。

独立的 Fine Uploader DnD 模块中没有此类选项。独立的拖放模块不会上传任何内容。它旨在与 FineUploaderBasic 模式实例一起使用(请注意,如果您愿意,可以完全在 Fine Uploader 之外使用它)。该模块是为希望将拖放支持轻松集成到他们的应用程序中的 FineUploaderBasic 用户提供的。但是,如果您使用的是 FineUploader 模式,则已经为您集成了拖放功能。

在基本模式下实现这一点

首先,添加一个 FineUploader 的实例:

var uploader = $("#uploader").fineUploader({ uploaderType: 'basic' /*, ... */ })

接下来,添加一个上传按钮:

var uploadButton = $("#upload-button").on('click', function () {
    $("#uploader").fineUploader('uploadStoredFiles');
});

然后,实例化您的拖放模块(请注意,这与 FineUploader 的实例是分开的!):

var dnd = $('#droppable').fineUploaderDnd({
     /* custom options */            
}).on('processingDroppedFilesComplete', function (event, files) {
    uploader('addFiles', files); //this submits the dropped files to Fine Uploader
});

供参考,请参阅以下内容:

于 2013-07-31T17:07:41.643 回答