jquery多个文件上传限制文件数不起作用

时间:2014-01-25 07:12:49

标签: javascript jquery jquery-file-upload

使用ajax Jquery多个文件上传。

option : {  
    limitMultiFileUploads : 3    
}

不适用于jquery文件上传。

这就是我所做的:

$(function() {        
        $('#attachUpload').fileupload({            
            dataType: 'json',
            limitConcurrentUploads: 1,
            option:
                {
                    maxFileSize: 40000,
                    maxNumberOfFiles: 2
                },
            start: function(e) {
                $('.btn-sent').unbind('click'); // important - remove all event handlers
            },
            done: function(e, data) {
                var data = $.parseJSON(data._response.jqXHR.responseText);
                doneflag--;
                if (doneflag == 0) {                                              
                        $('#frmCompose').submit();                       
                }
            },
            submit: function(e, data) {                
                data.formData = setFormData();                
            },
            add: function(e, data) {
            }
});

但文件大小限制和文件数量限制不起作用,任何人都可以帮助。

2 个答案:

答案 0 :(得分:2)

您实际上正在寻找maxNumberOfFiles选项。

有关文档的更多详细信息:https://github.com/blueimp/jQuery-File-Upload/wiki/Options

我的工作代码:

$('#fileupload').fileupload({
        // Uncomment the following to send cross-domain cookies:
        //xhrFields: {withCredentials: true},
        url: '../uploaderDemo/server/php/',
        maxNumberOfFiles: 1,
        acceptFileTypes: /(\.|\/)(mp3|wav)$/i
    });

答案 1 :(得分:0)

删除名称为"选项"的对象;并将两个设置放在与其他选项相同的级别。

 $(function() {        
            $('#attachUpload').fileupload({            
                dataType: 'json',
                limitConcurrentUploads: 1,
                maxFileSize: 40000,
                maxNumberOfFiles: 2,
                start: function(e) {
                    $('.btn-sent').unbind('click'); // important - remove all event handlers
                },
                done: function(e, data) {
                    var data = $.parseJSON(data._response.jqXHR.responseText);
                    doneflag--;
                    if (doneflag == 0) {                                              
                            $('#frmCompose').submit();                       
                    }
                },
                submit: function(e, data) {                
                    data.formData = setFormData();                
                },
                add: function(e, data) {
                }
    });