我有问题。我在autoUpload
$('element').fineUploaderDnd();
设置为false
我可以拖放文件就好了。但是,我似乎无法弄清楚如何手动触发上传。我尝试了以下两种方法:
var uploader = $('#droppable').fineUploaderDnd(/*{ ... }*/);
uploader.fineUploaderDnd('uploadStoredFiles'); //Doesnt work
uploader.fineUploaderDnd('addFiles', handleUploads.fineUploaderFiles); //Also doesnt work
请注意,handleUploads.fineUploaderFiles
是插件返回给我的“文件”对象的数组.on('processingDroppedFilesComplete')
他们都给我错误,说他们不支持。我也尝试了各种使用Dnd事物进行拖放操作的方法和普通的jquery fineUploader for'addFiles',但这似乎也不起作用。
我错过了什么?
答案 0 :(得分: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模式,请拖放&但是,drop已经为您集成。
在基本模式下实现此目的
首先,添加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
});
供参考,请参阅以下内容: