判斷pdf、word文檔、圖片等文件類型(格式)、大小的簡便方法


    判斷pdf、word文檔、圖片等文件類型(格式)、大小的簡便方法

    很久沒發文了,今天有時間就寫一下吧。

    關於上傳文件,通常我們都需要對其進行判斷,限制上傳的類型,如果是上傳圖片,我們甚至會把圖片轉化成base64數據后,再進行上傳。普遍的方法是直接寫在上傳按鈕的觸發方法里面,但是對於大型的項目而言,這必然是會重復着同一段代碼,使得代碼臃腫繁重,這樣也不利於平台的優化以及后續的維護,於是,我便封裝了一個小小的判斷上傳文件的類型,圖片類型的簡便方法,這樣不緊節省了重復的勞動力,而且還可以更好的優化項目,提高性能,代碼如下:

/*
Type:   該值為類型數組,例如:["gif","jpeg","jpg","png"]
Size:   該值為數值,限制大小(單位M)
fileID: 需要驗證的文件ID
clackFn:回調函數

使用:TypeSize(["gif","jpeg","jpg","png"],20,"id",function(){
             //回調函數內容
        });
  */
function TypeSize(Type,Size,fileID,clackFn){     
    var file = document.getElementById(fileID);
    var size = 1024*1024*Size;
    var arr = Type;
    var fileContentType = file.value.match(/^(.*)(\.)(.{1,8})$/)[3]; //文件類型
    if (file.files && file.files[0]){
        var f_size = file.files[0].size;   //文件大小
        if(arr.join(',').toLowerCase().indexOf(fileContentType.toLowerCase()) != -1){  //檢索上傳的文件類型是不是在允許的arr數組之內
            if(f_size > size){
                alert("文件太大,請重新上傳");
                file.value="";
                return false;
            }else {
                clackFn();
            }

        } else {
            alert("文件格式不匹配,請重新上傳",'確定');
        }
    } else {   //兼容IE
        alert('請切到高級瀏覽器,再進行圖片上傳','確定');
    }

}

謝謝閱讀,如果能幫到您,請幫忙頂一個,當然喜歡的可以收藏一下,謝謝!~( ̄▽ ̄~)(~ ̄▽ ̄)~

注:轉發請注明出處


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM