Plupload过滤器允许除少数扩展之外的所有扩展

时间:2016-01-07 16:23:19

标签: javascript jquery plupload

Pupload允许您指定可以上载哪些文件类型,但我想做相反的事情:允许除特定子集之外的所有文件类型。这可能吗?

1 个答案:

答案 0 :(得分:0)

有人在Plupload' Github上发布了一个解决方案。您必须使用addFileFilter方法。

    plupload.addFileFilter('excluded_extensions', function(filter, file, cb){
        var permitted = true;
        var exts = filter[0].extensions.split(',');
        //We have no excluded extensions, function presented default exclusion string, so allow anything
        if(exts.length === 1 && exts[0] === "-")
            permitted = true;
        else
        {
            for(var i = 0; i < exts.length; i++)
            {
                var fileArray = file.name.split('.');
                var extension = fileArray[fileArray.length - 1];

                if(exts[i].toUpperCase() === extension.toUpperCase())
                {
                    this.trigger('Error', {
                        code: plupload.FILE_EXTENSION_ERROR,
                        message: plupload.translate('File extension error.'),
                        file: file
                    });
                    permitted = false;
                    cb(false);
                    return;
                }
            }
        }

        if(permitted)
            cb(true);
    });

Source

相关问题