1. 程式人生 > >js工具--驗證input[type='file']是否符合要求

js工具--驗證input[type='file']是否符合要求

/**
 * 檔案上傳工具封裝
 * @type {{}}
 */
var filesUpload = {

    /**
     * 判斷檔案是否符合要求
     * @param fileId input[type='file'] fileId
     * @param allowType the file type allowed to upload
     * @param allowSize the file size allowed to upload
     */
    judgeFile:function (fileId,allowType,allowSize) {
        if(bms.isEmpty(fileId)){
            throw new Error("id can't be null");
        }

        if(bms.isEmpty($("#"+fileId).val())){
            throw new Error("檔案不能為空")
        }
        var fileSize = document.getElementById(fileId).files[0];
        var filePath = $("#"+fileId).val().toLowerCase().split(".");
        var fileType =  filePath[filePath.length - 1];

        if(bms.isNotEmpty(allowType) && allowType.indexOf(fileType) < 0){
            throw new Error("檔案格式不符合要求");
        }

        if(allowSize > 0 && fileSize.size>allowSize){
            throw new Error("檔案內容過大")
        }
    }
};