欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

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

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

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

HTML結(jié)構(gòu):

  1. <div class="container">  

  2.     <label>請(qǐng)選擇一個(gè)圖像文件:</label>  

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

  4. </div>  

順便說(shuō)下這個(gè)上傳的主要邏輯:

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

&middot;綁定好input的change時(shí)間,

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

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("上傳的圖片格式不正確,請(qǐng)重新選擇")<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樹(shù)                      <br>          }  

  22.             }   

  23.         }   

  24.     }   

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

然而并沒(méi)有,這樣只是將圖片轉(zhuǎn)換成base64編碼后再前端顯示,一刷新什么都沒(méi)有

插入圖片后,打開(kāi)開(kāi)發(fā)者工具看html結(jié)構(gòu)是這樣的

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

現(xiàn)實(shí)的做法是,我們?cè)谔幚砗瘮?shù)里將文件隊(duì)列里的文件發(fā)送到后端,后端同學(xué)呢返回文件對(duì)應(yīng)的MD5加密過(guò)文件和路徑給前端,前端就拿著這個(gè)路徑渲染到頁(yè)面上。

之后再把MD5文件傳回給后端,因?yàn)樯蟼魍旰笄岸艘话阌袆h除圖片的操作,回傳目的就是告訴后端確認(rèn)那些圖片是我們想要的,后端存入數(shù)據(jù)庫(kù)里。

說(shuō)下用jquery如何交互吧

JavaScript Code復(fù)制內(nèi)容到剪貼板

  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. }      

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

名稱(chēng)欄目:HTML5中怎么實(shí)現(xiàn)多圖上傳功能
標(biāo)題路徑:http://www.chinadenli.net/article4/jdjhie.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供自適應(yīng)網(wǎng)站定制開(kāi)發(fā)網(wǎng)頁(yè)設(shè)計(jì)公司商城網(wǎng)站服務(wù)器托管標(biāo)簽優(yōu)化

廣告

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

成都網(wǎng)頁(yè)設(shè)計(jì)公司