刷新plupload

时间:2011-01-18 05:57:14

标签: plupload

我正在使用plupload。

传输队列完成后如何重置上传器,以便用户可以根据需要上传更多文件?

6 个答案:

答案 0 :(得分:29)

uploader.splice();将从队列中删除所有文件,并使上传器对象准备好重新开始。

答案 1 :(得分:8)

uploader.splice();

uploader.refresh();

按顺序...在jquery.ui模式下工作。

答案 2 :(得分:5)

现在可以选择在上传完成后自动重置队列小部件。

http://www.plupload.com/documentation.php

  

<强> multiple_queues

     

布尔状态,如果您应该能够多次上传。

答案 3 :(得分:2)

jayarjo的解决方案会从上传程序中删除文件,但不会恢复添加/上传按钮。

这个有用......

http://www.plupload.com/punbb/viewtopic.php?pid=1360#p1360

答案 4 :(得分:1)

按顺序:

        var uploader = $('#uploader').plupload('getUploader');
        uploader.splice();
        uploader.refresh();

我正在使用一个功能,该功能正在使用其他一些内容重置表单,但无法重置plupload。我不介意它不会再出现Drag Files here文本,虽然我认为它可能会被贬低..它可能与计数有关。例如,我有这些参数:

                   uploader_0_name          account-disabled-1.png
                   uploader_0_status    done
                   uploader_count           1

也许删除这些输入并不是一个好主意,但将它们恢复到初始状态可能会有效。我会调查它并在它开发时回来...感谢您提出的建议。

答案 5 :(得分:1)

我绑定到UploadComplete事件以在上传完成时删除并重新初始化plupload对象。事实证明这对我来说是最好的实现。

通过这个实现,只需调用init_uploader()来初始化 - 在这种情况下,在jquery页面上加载完成。

HTML:

<div id="uploader_wrapper"></div>

使用Javascript:

function init_uploader()
{
    $("#uploader_wrapper").append('<div id="uploader"><img src="/images/loading.gif" /></div>');

    $("#uploader").pluploadQueue({
        runtimes: 'html5,html4,gears,browserplus,flash,silverlight',
        url: 'some_url',
        max_file_size: '10mb',
        chunk_size: '1mb',
        unique_names: true,
        filters: [
            { title: "Image files", extensions: "jpg,gif,png,jpeg" }
        ],
        flash_swf_url: 'http://www.plupload.com/plupload/js/plupload.flash.swf',
        silverlight_xap_url: 'http://www.plupload.com/plupload/js/plupload.silverlight.xap'
    });

    var uploader = $('#uploader').pluploadQueue();

    uploader.bind("UploadComplete", function () {
        $("#uploader").remove();
        init_uploader();
    });
}

$(function () {
    init_uploader();
});