0
我为blueimp/jQuery文件上传控件定制了一个文件上传实现。除非我选择多个文件并且其中一个文件超过最大长度,它仍然会尝试上传超出界限的文件(尽管我没有为该特定文件调用data.submit()
)。jQuery文件上传控件错误地提交大文件
我已验证progress
事件不会针对大型(和未提交)文件触发,但服务器最终会报告404.13(请求筛选模块配置为拒绝超出请求内容长度的请求),并且没有其他实际提交的文件上传。
如何更改我使用jQuery文件上传控件上传有效文件的方式,但忽略大文件?
这里是我的代码...它操纵了一个模型,它被挖空显示UI元素,所以你不会在下面的代码中看到任何UI操作。
$('#fileupload').fileupload({
dataType: 'json',
url: '/Handlers/UploadHandler.ashx',
progress: function (e, data) {
console.log(data.context);
var progress = parseInt(data.loaded/data.total * 100, 10);
var file = fileUploadDataModel.files()[data.context];
file.percentComplete(progress);
},
add: function (e, data) {
$.each(data.files, function (index, file) {
var fileModel = new FileModel(file.name, file.size);
fileUploadDataModel.files.push(fileModel);
data.context = fileUploadDataModel.files().length - 1;
if (file.size > opts.maxFileSize) {
fileModel.errorMessage('{0} ({1}) exceeds maximum size -- rejected'.format(file.name, friendlyBytes(file.size)));
fileModel.percentComplete(0);
}
else data.submit();
});
},
done: function (e, data) {
var file = fileUploadDataModel.files()[data.context];
file.percentComplete(100);
},
singleFileUploads: false,
});