blueimp文件上传插件响应代码

时间:2012-10-23 17:55:32

标签: jquery twitter-bootstrap file-upload

我在这里https://github.com/blueimp/jQuery-File-Upload使用fileupload插件“blueimg file upload”。

它表明下面显示的错误很少:

window.locale = {
    "fileupload": {
        "errors": {
            "maxFileSize": "File is too big",
            "minFileSize": "File is too small",
            "acceptFileTypes": "Filetype not allowed",
            "maxNumberOfFiles": "Max number of files exceeded",
            "uploadedBytes": "Uploaded bytes exceed file size",
            "emptyResult": "Empty file upload result"
        },
        "error": "Error",
        "start": "Start",
        "cancel": "Cancel",
        "destroy": "Delete"
}
};

但是,我怎么能抛出这些错误。 例如:我可以检查服务器端的最大文件大小,然后将相应的错误代码响应到客户端上的blueimg插件。

而且,我想为它注入更多的错误映射。 如何完成它?

提前感谢。

1 个答案:

答案 0 :(得分:0)

使用文件上传小部件时,可以将maxFileSize,minFileSize,acceptFileTypes等设置为选项。

在文件上传初始化的添加功能中,您可以这样检查。

add: function (e, data) {
  $.each(data.files, function (index, file) {
    if (file.error === 'maxFileSize') {  
        $('#errorMessage').html('<a class=\"close\" onclick=\"closeAlert(\'errorMessage\');\">×</a>' + fname +  ': File size larger than allowed. Please upload a smaller file.');
    } 
    else if (file.error === 'acceptFileTypes') {
        $('#errorMessage').html('<a class=\"close\" onclick=\"closeAlert(\'errorMessage\');\">×</a>' + fname +  ': Invalid file type. Please select a valid file.');
    } 
    else if (file.error === 'minFileSize') {
        $('#errorMessage').html('<a class=\"close\" onclick=\"closeAlert(\'errorMessage\');\">×</a>' + fname + ': Cannot upload empty file.');
    }
  });
}

文件上传插件会执行所有检查,并根据设置的选项返回错误。