javascript - plupload removeFiles - Stack Overflow

I'm trying to remove files with not allowed extensions on the FilesAdded event.(I can't use

I'm trying to remove files with not allowed extensions on the FilesAdded event. (I can't use the filter parameter as I need an exclusive list).

I have some code a bit like this:

uploader.bind('FilesAdded', function(up, files) {
    var count = files.length;
    var i = 0;
    for (i;i<count;i++) {
        var validExt = validate(files[i].name);
        if(!validExt){

I need to remove the files added if the extensions aren't valid. I've tried the following:

uploader.splice(i,1)
uploader.removeFile(files[i]);
uploader.refresh();

The FilesRemoved event is fired, but removed files still get uploaded with uploader.start().

I don't know if this is a bug in the program, or too obscure to expect an easy answer to, but if anyone can help, I'd be really grateful. I don't think I'm missing anything obvious.

Thanks.

I'm trying to remove files with not allowed extensions on the FilesAdded event. (I can't use the filter parameter as I need an exclusive list).

I have some code a bit like this:

uploader.bind('FilesAdded', function(up, files) {
    var count = files.length;
    var i = 0;
    for (i;i<count;i++) {
        var validExt = validate(files[i].name);
        if(!validExt){

I need to remove the files added if the extensions aren't valid. I've tried the following:

uploader.splice(i,1)
uploader.removeFile(files[i]);
uploader.refresh();

The FilesRemoved event is fired, but removed files still get uploaded with uploader.start().

I don't know if this is a bug in the program, or too obscure to expect an easy answer to, but if anyone can help, I'd be really grateful. I don't think I'm missing anything obvious.

Thanks.

Share Improve this question edited Jan 12, 2012 at 21:01 stackuser10210 asked Jan 12, 2012 at 20:53 stackuser10210stackuser10210 3521 gold badge6 silver badges11 bronze badges
Add a ment  | 

5 Answers 5

Reset to default 5

A few things...

1st you have to bind the filesAdded event after calling the init() function.

uploader.init();

uploader.bind('FilesAdded', function (up, files) {...}

2nd you can filter the files extension using the prop filters when defining plupload

uploader = new plupload.Uploader({
        ...,
        filters: [
            { title: "Image files", extensions: "jpeg,jpg,gif,png" }
        ],
        ...
    });

3rd here's a working sample to remove files from plupload

$.each(uploader.files, function (i, file) {
    if (file && file.id != currentFile.id) {
        uploader.removeFile(file);
    }
});

Cheers!

When there is no upload progress and you want to remove all queued files from uploader list:

var queueLength = uploader.files.length;

for (i = 0; i < queueLength; i++) {

if (uploader.files[0] && uploader.files[0] !== undefined) {

uploader.removeFile(uploader.files[0]);

}

}

Note: If you try to remove files by index, some files are left in the list; because every time a file item is removed from the list, it is refreshed and indexes are resorted.

You need to pass the id of the file you want to remove to removeFile:

uploader.removeFile(files[i].id)

You can use callback "QueueChanged", it works for me as well.

uploader.bind('QueueChanged', function(up){

  var file_count = up.files.length;
  for(i = 0; i < file_count; i++) {
    if(i != (file_count - 1)) up.removeFile(up.files[i]);
  }

});
uploader.bind('FilesAdded', function(up, files) {
    if( files.length > 1 )
    {
        $.each(files, function(i, file) {
            up.removeFile(file);    
        });
    }
});

发布者:admin,转转请注明出处:http://www.yc00.com/questions/1743705227a4493253.html

相关推荐

  • javascript - plupload removeFiles - Stack Overflow

    I'm trying to remove files with not allowed extensions on the FilesAdded event.(I can't use

    6天前
    10

发表回复

评论列表(0条)

  • 暂无评论

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信