maxNumberOfFiles选项在jquery文件上载程序中不起作用
我似乎无法限制可以上传的文件数量。 我使用拖放方法和搜索浏览器的方法。 在wiki中,我读到有必要使用maxNumberOfFiles选项并删除multiple属性,但它不会改变,总是可以删除多个文件。 除了代码外,我找不到有关maxNumberOfFiles选项的信息 剧本maxNumberOfFiles选项在jquery文件上载程序中不起作用,jquery,jquery-file-upload,Jquery,Jquery File Upload,我似乎无法限制可以上传的文件数量。 我使用拖放方法和搜索浏览器的方法。 在wiki中,我读到有必要使用maxNumberOfFiles选项并删除multiple属性,但它不会改变,总是可以删除多个文件。 除了代码外,我找不到有关maxNumberOfFiles选项的信息 剧本 我认为问题出在getNumberOfFiles实现中: maxNumberOfFiles选项取决于getNumberOfFiles选项, 它由UI和AngularJS实现定义。 如果您不使用UI或AngularJS版本
我认为问题出在getNumberOfFiles实现中: maxNumberOfFiles选项取决于getNumberOfFiles选项, 它由UI和AngularJS实现定义。
如果您不使用UI或AngularJS版本,则必须将getNumberOfFiles实现为返回当前文件数的函数,例如:我认为问题在于getNumberOfFiles实现: maxNumberOfFiles选项取决于getNumberOfFiles选项, 它由UI和AngularJS实现定义。
如果您不使用UI或AngularJS版本,则必须将getNumberOfFiles实现为一个返回当前文件数的函数,例如:我遇到了相同的问题,最后使用了以下方法: 将singleFileUploads设置为false:这确保如果用户删除3个文件,则不会使用一个文件调用add 3次,而是使用三个文件调用add 1次 然后您可以在add参数中处理自己的文件数 以下是我在dropzone中删除多个文件时所做的操作,这些文件的背景为闪烁的红色:
$('.fileToUpload').each(function () { // Multiple input file
$(this).fileupload({
url: '...',
dataType: 'json',
dropZone: $(this),
singleFileUploads: false,
add: function (e, data) {
var targetName = data.paramName;
$('#'+targetName+'Dropzone').removeClass('hover');
if (data.files.length > 1) {
$('#'+targetName+'Dropzone').addClass('dropzone-error');
setTimeout("$('#"+targetName+"Dropzone').removeClass('dropzone-error')",300);
return;
}
var jqXHR = data.submit(); // Catching the upload process of every file
$('#'+targetName+'Cancel').on('click',function(e){
jqXHR.abort();
});
},
...
我也有同样的问题,最后还是这样做了: 将singleFileUploads设置为false:这确保如果用户删除3个文件,则不会使用一个文件调用add 3次,而是使用三个文件调用add 1次 然后您可以在add参数中处理自己的文件数 以下是我在dropzone中删除多个文件时所做的操作,这些文件的背景为闪烁的红色:
$('.fileToUpload').each(function () { // Multiple input file
$(this).fileupload({
url: '...',
dataType: 'json',
dropZone: $(this),
singleFileUploads: false,
add: function (e, data) {
var targetName = data.paramName;
$('#'+targetName+'Dropzone').removeClass('hover');
if (data.files.length > 1) {
$('#'+targetName+'Dropzone').addClass('dropzone-error');
setTimeout("$('#"+targetName+"Dropzone').removeClass('dropzone-error')",300);
return;
}
var jqXHR = data.submit(); // Catching the upload process of every file
$('#'+targetName+'Cancel').on('click',function(e){
jqXHR.abort();
});
},
...
我发现使用一个简单的计数器对我有效
var maxFiles = 1;
var counter = 0;
$('#fileupload').fileupload({
url: '/uploadUrl',
add: function (e, data) {
if(counter < maxFiles){
counter++;
}else
return false;
}
});
我发现使用一个简单的计数器对我有效
var maxFiles = 1;
var counter = 0;
$('#fileupload').fileupload({
url: '/uploadUrl',
add: function (e, data) {
if(counter < maxFiles){
counter++;
}else
return false;
}
});
我按照Irvin Dominin说的做了,但即使插入jquery.fileupload-ui.js,仍然无法工作 调试后,我发现getNumberOfFiles无法工作,因为这两个文件的顺序不同。 jquery.fileupload-validate.js和jquery.fileupload-ui.js 将jquery.fileupload-ui.js文件放在jquery.fileupload-validate.js解决我的问题之后
希望它能对有同样问题的人起作用。我按照Irvin Dominin所说的做了,但即使插入jquery.fileupload-ui.js,仍然不起作用 调试后,我发现getNumberOfFiles无法工作,因为这两个文件的顺序不同。 jquery.fileupload-validate.js和jquery.fileupload-ui.js 将jquery.fileupload-ui.js文件放在jquery.fileupload-validate.js解决我的问题之后
希望它能对有同样问题的人起作用。谢谢你的帮助。我必须添加jquery.fileupload ui.js吗?谢谢你的帮助。我必须添加jquery.fileupload-ui.js吗?