使用webuploader插件上传图片时如果正确 限制上传数量
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用webuploader插件上传图片时如果正确 限制上传数量相关的知识,希望对你有一定的参考价值。
// 初始化Web Uploader
uploader = WebUploader.create(
// 自动上传。
auto: true,
// swf文件路径
swf: '__PUBLIC__/Home/swf/Uploader.swf',
// 文件接收服务端。
server: '#:U('Feedback/uploadimg')#',
// 选择文件的按钮。可选。
// 内部根据当前运行是创建,可能是input元素,也可能是flash.
pick: '#filePicker',
//[可选] [默认值:undefined] 验证文件总数量, 超出则不允许加入队列。
fileNumLimit: 2,
//[可选] [默认值:undefined] 验证单个文件大小是否超出限制, 超出则不允许加入队列。
fileSingleSizeLimit: 1024*512,
// 只允许选择文件,可选。
accept:
title: 'Images',
extensions: 'gif,jpg,jpeg,bmp,png',
mimeTypes: 'image/*'
);
uploader.on('error', function(handler)
if(handler=="Q_EXCEED_NUM_LIMIT")
alert("超出最大张数");
if(handler=="F_DUPLICATE")
alert("文件重复");
);
一次选择多张图片时可以正确弹出提示。
但每次选择一张时却无法弹出提示。
你要理解fileNumLimit的含义。fileNumLimit=总文件数-已经上传的文件数。这就意味着你fileNumLimit设置为5的话,一次上传6张是不行的,但是每次上传1张,就能突破5张的限制。原因是插件在上传完一个文件后,会把计数清零。你可以参考修改下面的代码:
uploader.on( 'fileQueued', function()count++;
);
uploader.on( 'fileDequeued', function()
count--;
);
uploader.on( 'uploadFinished', function()
//注销这段代码就可以了 count = 0;
);
上面的代码位于webuploader.js的L3809
参考技术A fileNumLimit: 5, //upload.js 里面的 fileNumLimit 可以限制 参考技术B 肯定是哪里出问题了以上是关于使用webuploader插件上传图片时如果正确 限制上传数量的主要内容,如果未能解决你的问题,请参考以下文章