在圖片上傳的時候,有時候后台需要前台上傳base64文件,這時候我們就需要將圖片資源轉化成base64,下面這段js代碼就可實現此功能。
1、首先在html里定義一個input輸入框:
BASE64圖片: <input type="file" id="image"><br/> <button id="up">上傳</button>
2、通過js將圖片資源轉化成base64碼:
$("#up").click(function(){ var reader = new FileReader(); var AllowImgFileSize = 2100000; //上傳圖片最大值(單位字節)( 2 M = 2097152 B )超過2M上傳失敗 var file = $("#image")[0].files[0]; var imgUrlBase64; if (file) { //將文件以Data URL形式讀入頁面 imgUrlBase64 = reader.readAsDataURL(file); reader.onload = function (e) { //var ImgFileSize = reader.result.substring(reader.result.indexOf(",") + 1).length;//截取base64碼部分(可選可不選,需要與后台溝通) if (AllowImgFileSize != 0 && AllowImgFileSize < reader.result.length) { alert( '上傳失敗,請上傳不大於2M的圖片!'); return; }else{ //執行上傳操作 alert(reader.result); } } } });
結語:這里只是實現了將文件資源轉化成base64碼這個最基礎的操作,網上有很多據此的擴展,下一篇我會根據網上的一些資源再做整理拓展。