默认情况下,由于支持分段上传、断点续传,因此系统不限制附件上传的大小。
但是如果考虑系统存储空间、性能等问题,可以通过事件对附件大小进行控制,示例代码如下。
/**
* 限制附件上传大小
*/
fileUploader.bind( "FilesAdded", function( up, files ) {
var error = [];
for ( var i=0; i<files.length; i++ ) {
var f = files[i],
ext = f.name.replace(/^.+\.([^.]+)$/g, "$1");
// 图片,不允许超过2M
if ( /^jpg|jpeg|bmp|png|gif$/g.test(ext) ) {
if ( f.size > 2 * 1024 * 1024 ) {
up.removeFile( f );
error.push("图片文件 “" + f.name + "” 大小超过2M,不允许上传。")
}
}
// 文档,不允许超过20M
else if ( /^doc|docx|xls|xlsx|ppt|pptx|pdf|zip|rar$/g.test(ext) ) {
if ( f.size > 20 * 1024 * 1024 ) {
up.removeFile( f );
error.push("文件 “" + f.name + "” 大小超过20M,不允许上传。")
}
}
}
if ( error.length ) {
up.widget.notify("error", error.join("<br/>"));
}
});