jQuery文件上传maxNumberOfFiles和getNumberOfFiles选项

时间:2013-05-23 21:05:53

标签: jquery jquery-file-upload

我正在使用jQuery文件上传并将maxNumberOfFiles设置为1.但是,它一次允许多个文件。文件陈述......

The maxNumberOfFiles option depends on the getNumberOfFiles option, which is defined by the UI and AngularJS implementations.

没有关于该主题的进一步文件。 getNumberOfFiles只是一个你可以传入的函数。

这是我的......

$('#fileupload').fileupload({
                maxNumberOfFiles: 1,
                getNumberOfFiles: function () { return 1 }
});

有没有人使用maxNumberOfFiles选项?

2 个答案:

答案 0 :(得分:12)

我相信getNumberOfFiles只是jquery.fileupload-ui.js(8.2.1)的added as an option to a recent version

作为替代方案,您可以将选项singleFileUploads设置为false,如果添加了多个文件,则可以在add回调中抛出错误。

var maxFiles = 1;
$('#fileupload').fileupload({
    singleFileUploads: false,
    url: '/uploadUrl'
}).bind('fileuploadadd', function (e, data) {
        var fileCount = data.files.length;
        if (fileCount > maxFiles) {
            alert("The max number of files is "+maxFiles);
            return false; 
        }
    });

答案 1 :(得分:1)

我发现只使用一个简单的计数器就足够了

var maxFiles = 1;
var counter=0;
$('#fileupload').fileupload({
url: '/uploadUrl',
add: function (e, data) {
        if(counter < maxFiles){
            counter++;
  }else return false;

    }
});