我正在使用plupload 1.5.7,jQuery Queue Widget,上传完成后添加文件和开始上传按钮消失,替换为标签上传1/1文件。
现在我无法添加其他文件,我需要刷新页面并上传其他文件。 我还尝试了 uploader.splice()和 uploader.refresh()方法,但没有成功。
上传后,一个或多个文件是否可以继续上传?
我的实际配置是:
$("#uploader").pluploadQueue({
// General settings
runtimes: 'html5,gears,flash,silverlight,browserplus',
url: '/upload.php',
max_file_size: '10mb',
chunk_size: '1mb',
unique_names: true,
// Specify what files to browse for
filters: [
{title : "Image files", extensions : "jpg,png"}
],
// Flash settings
flash_swf_url: '/assets/js/plupload/plupload.flash.swf',
// Silverlight settings
silverlight_xap_url: '/assets/js/plupload/plupload.silverlight.xap',
init: {
FilesAdded: function(up, files) {},
UploadComplete: function(up, files) {
up.splice();
up.refresh();
}
}
});
答案 0 :(得分:7)
我习惯这样做(抱歉,现在无法测试),将我的初始化代码嵌入到我可以随时调用的函数中。
va initUploader = function () {
$("#uploader").pluploadQueue({
// General settings
runtimes: 'html5,gears,flash,silverlight,browserplus',
url: '/upload.php',
max_file_size: '10mb',
chunk_size: '1mb',
unique_names: true,
// Specify what files to browse for
filters: [{
title: "Image files",
extensions: "jpg,png"
}],
// Flash settings
flash_swf_url: '/assets/js/plupload/plupload.flash.swf',
// Silverlight settings
silverlight_xap_url: '/assets/js/plupload/plupload.silverlight.xap',
init: {
FilesAdded: function (up, files) {},
UploadComplete: function (up, files) {
// destroy the uploader and init a new one
up.destroy();
initUploader();
}
}
});
};
$(document).ready(function(){initUploader();});
答案 1 :(得分:4)
您正在寻找的按钮仍然可用但未显示。 因此,您可以通过JS更改显示CSS选项,而不是重新初始化Uploader,如下所示:
uploader.bind('UploadComplete', function() {
$(".plupload_buttons").css("display", "inline");
$(".plupload_upload_status").css("display", "inline");
})
或者如果您在init函数中附加事件:
UploadComplete: function() {
$(".plupload_buttons").css("display", "inline");
$(".plupload_upload_status").css("display", "inline");
}
请注意,我在这个例子中使用了jQuery,但它也适用于普通的JS。