gpt4 book ai didi

javascript - Plupload - 仅限一个文件

转载 作者:行者123 更新时间:2023-12-03 01:52:06 24 4
gpt4 key购买 nike

我在 plupload API 文档中没有看到有关将上传文件数量限制为任意数量(甚至是 1)的选项。

文档失败?或功能失败?如果它不存在,如果有人需要它,我将努力实现这一点..

最佳答案

这是一个功能失败。我围绕 jQuery API 做了一个包装器,这就是我所做的让它为我工作。我的代码执行一些其他业务逻辑,但它应该足以让您启动。

基本上,绑定(bind)到 FilesAdded 事件并在 uploader 对象上调用 removeFile (如果文件太多)。我想我添加了 50 毫秒超时,因为它给我带来了文件尚不存在的问题。

uploader.bind('FilesAdded', function (up, files) {
var i = up.files.length,
maxCountError = false;

plupload.each(files, function (file) {

if(uploader.settings.max_file_count && i >= uploader.settings.max_file_count){
maxCountError = true;
setTimeout(function(){ up.removeFile(file); }, 50);
}else{
// Code to add pending file details, if you want
}

i++;
});

if(maxCountError){
// Too many files uploaded, do something
}

});

max_file_count 是我在创建 pluploader 实例时添加的内容。

<小时/>

编辑:实际上我必须为此采取两种不同的方法。上面的代码只允许一个人上传一定数量的文件(否则会生成错误)。

此代码段的工作方式类似 - 但会删除现有文件并仅上传最新文件:

uploader.bind('FilesAdded', function (up, files) {
var fileCount = up.files.length,
i = 0,
ids = $.map(up.files, function (item) { return item.id; });

for (i = 0; i < fileCount; i++) {
uploader.removeFile(uploader.getFile(ids[i]));
}

// Do something with file details
});

关于javascript - Plupload - 仅限一个文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7957320/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com