中文字幕日韩精品一区二区免费_精品一区二区三区国产精品无卡在_国精品无码专区一区二区三区_国产αv三级中文在线

HTML5中怎么實現(xiàn)多圖上傳功能

HTML5中怎么實現(xiàn)多圖上傳功能,針對這個問題,這篇文章詳細介紹了相對應的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。

鳳縣網站制作公司哪家好,找創(chuàng)新互聯(lián)公司!從網頁設計、網站建設、微信開發(fā)、APP開發(fā)、響應式網站等網站項目制作,到程序開發(fā),運營維護。創(chuàng)新互聯(lián)公司于2013年開始到現(xiàn)在10年的時間,我們擁有了豐富的建站經驗和運維經驗,來保證我們的工作的順利進行。專注于網站建設就選創(chuàng)新互聯(lián)公司

HTML結構:

  1. <div class="container">  

  2.     <label>請選擇一個圖像文件:</label>  

  3.     <input type="file" id="file_input" multiple/>  

  4. </div>  

順便說下這個上傳的主要邏輯:

&middot;用input標簽并選擇type=file,記得帶上multiple,不然就只能單選圖片了

&middot;綁定好input的change時間,

&middot;重點就是如何處理這個change事件了,使用H5新的FileReader接口讀取文件并打成base64編碼,之后的事就是與后端同學交互著玩啦

JS代碼:

  1. window.onload = function(){   

  2.         var input = document.getElementById("file_input");   

  3.         var result,div;   

  4.     

  5.         if(typeof FileReader==='undefined'){   

  6.             result.innerHTML = "抱歉,你的瀏覽器不支持 FileReader";   

  7.             input.setAttribute('disabled','disabled');   

  8.         }else{   

  9.             input.addEventListener('change',readFile,false);   

  10.         }<br>     //handler  

  11.         function readFile(){   

  12.             for(var i=0;i<this.files.length;i++){   

  13.                 if (!input['value'].match(/.jpg|.gif|.png|.bmp/i)){  //判斷上傳文件格式  

  14.                     return alert("上傳的圖片格式不正確,請重新選擇")<br>          }   

  15.                 var reader = new FileReader();   

  16.                 reader.readAsDataURL(this.files[i]);   

  17.                 reader.onload = function(e){   

  18.                     result = '<div id="result"><img src="'+this.result+'" alt=""/></div>';   

  19.                     div = document.createElement('div');   

  20.                     div.innerHTML = result;   

  21.                     document.getElementById('body').appendChild(div);    //插入dom樹                      <br>          }  

  22.             }   

  23.         }   

  24.     }   

上傳多張圖片難道就這樣實現(xiàn)了嗎0.0

然而并沒有,這樣只是將圖片轉換成base64編碼后再前端顯示,一刷新什么都沒有

插入圖片后,打開開發(fā)者工具看html結構是這樣的

 HTML5中怎么實現(xiàn)多圖上傳功能

現(xiàn)實的做法是,我們在處理函數(shù)里將文件隊列里的文件發(fā)送到后端,后端同學呢返回文件對應的MD5加密過文件和路徑給前端,前端就拿著這個路徑渲染到頁面上。

之后再把MD5文件傳回給后端,因為上傳完后前端一般有刪除圖片的操作,回傳目的就是告訴后端確認那些圖片是我們想要的,后端存入數(shù)據庫里。

說下用jquery如何交互吧

JavaScript Code復制內容到剪貼板

  1. function readFile(){   

  2.             var fd = new FormData();   

  3.             for(var i=0;i<this.files.length;i++){   

  4.                 var reader = new FileReader();   

  5.                 reader.readAsDataURL(this.files[i]);   

  6.                 fd.append(i,this.files[i]);<br>          }   

  7.                 $.ajax({   

  8.                     url : '',   

  9.                     type : 'post',   

  10.                     data : fd,   

  11.                     success : function(data){   

  12.                         console.log(data)   

  13.                    }    

  14.                 })   

  15. }      

關于HTML5中怎么實現(xiàn)多圖上傳功能問題的解答就分享到這里了,希望以上內容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關注創(chuàng)新互聯(lián)行業(yè)資訊頻道了解更多相關知識。

名稱欄目:HTML5中怎么實現(xiàn)多圖上傳功能
標題路徑:http://www.rwnh.cn/article4/jdjhie.html

成都網站建設公司_創(chuàng)新互聯(lián),為您提供自適應網站、定制開發(fā)網頁設計公司、商城網站、服務器托管、標簽優(yōu)化

廣告

聲明:本網站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)

成都網頁設計公司
界首市| 大竹县| 临清市| 赫章县| 灵武市| 合阳县| 新田县| 会东县| 关岭| 孝昌县| 华阴市| 新营市| 景德镇市| 维西| 栖霞市| 莲花县| 德保县| 枣阳市| 清丰县| 丹凤县| 沅江市| 仪征市| 甘洛县| 格尔木市| 西华县| 丹寨县| 隆化县| 昌乐县| 康平县| 福泉市| 修水县| 大洼县| 类乌齐县| 虞城县| 高陵县| 南通市| 吴桥县| 仲巴县| 南城县| 连平县| 社会|