麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 編程 > HTML > 正文

Html5實現文件異步上傳功能

2024-08-26 00:19:32
字體:
來源:轉載
供稿:網友

1 簡介

開發文件上傳功能從來不是一件愉快的事,異步上傳更是如此,使用過iframe和Flash的上傳方案,也都感覺十分的別扭。本文簡要簡紹利用Html5的FormData實現文件的異步上傳,還可以實現上傳進度條和文件大小驗證等。服務端使用springMVC的方案進行處理。

2 Html代碼

<form id="myForm">    <input type="file" id="u_photo" name="u_photo" />    <input type="button" id="submit-btn" value="上傳" /></form>

3 JQuery上傳

$("#submit-btn").on('click', function() {    $.ajax({        url:"/test/upload",        type:"post",        data:new FormData($("#myForm").get(0)),        //十分重要,不能省略        cache: false,        processData: false,        contentType: false,        success: function () {            alert("上傳成功!");        }    });});

4 JQuery文件大小驗證

文件大小的及相應行為的控制,需根據需要自行處理,本方法只是示例方法。

$('#u_photo').on('change', function() {    var file = this.files[0];    if (file.size > 1024*1000) {        alert('文件最大1M!')    }});

5 JQuery進度條

在ajax方法中加入xhr即可控制上傳進度,進度條可以使用html5的progress也可使用其它的進度條。顯示及隱藏進度條需要自行處理,本方法只是簡單介紹了進度條的基本控制。

xhr: function() {    var myXhr = $.ajaxSettings.xhr();    if (myXhr.upload) {        myXhr.upload.addEventListener('progress', function(e) {            if (e.lengthComputable) {                $('progress').attr({                    value: e.loaded,                    max: e.total,                });            }        } , false);    }    return myXhr;}

6 springMVC服務端

6.1 maven依賴

<dependency>    <groupId>commons-io</groupId>    <artifactId>commons-io</artifactId>    <version>2.5</version></dependency><dependency>    <groupId>commons-fileupload</groupId>    <artifactId>commons-fileupload</artifactId>    <version>1.3.2</version></dependency>

6.2 servlet-context.xml

<bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver" />

6.3 Controller

示例程序,并未給出文件驗證,存儲及處理的相應代碼。

@RequestMapping(value="/test/upload",method = RequestMethod.POST)@ResponseBodypublic String upload(@RequestParam("u_photo") MultipartFile u_photo) {    System.out.println("u_photo="+u_photo.getSize());    return "ok";}

7 兼容性

IE 10+, Firefox 4.0+, Chrome 7+, Safari 5+, Opera 12+

8 推薦閱讀

如果對上述方案不滿意,推薦使用如下的解決方案:

JQuery File Uploader

以上所述是小編給大家介紹的Html5實現文件異步上傳功能,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對VeVb武林網網站的支持!


注:相關教程知識閱讀請移步到HTML教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 精品无吗乱吗av国产爱色 | 亚洲午夜久久久精品一区二区三区 | 成年毛片 | 小情侣嗯啊哦视频www | 国产1区在线观看 | 99亚洲伊人久久精品影院红桃 | 免费日韩片 | 7777奇米成人四色影视 | 久久久三级免费电影 | 午夜视频播放 | 最新午夜综合福利视频 | 日本中文一级片 | 久久久久久久国产a∨ | 欧美亚洲国产一区二区三区 | 中文字幕xxx| 毛片免费看电影 | 成人福利网 | caoporn国产一区二区 | 最新中文在线视频 | 毛片在线免费观看完整版 | 久久成人免费网 | 九九午夜 | 美女久久久久 | 日本aaaa片毛片免费观蜜桃 | 欧美va亚洲| 娇喘视频在线观看 | 国产又白又嫩又紧又爽18p | 国产精品一区二区三区在线播放 | 国产亚洲精品久久久久久久久 | 久久精品亚洲成在人线av网址 | 毛片一级免费看 | 越南一级黄色片 | 久久精品久久精品久久精品 | 欧美成人做爰高潮片免费视频 | 暴力肉体进入hdxxxx古装 | 草草久| 91美女啪啪 | 毛片a级毛片免费播放100 | 最新在线中文字幕 | 一级片久久免费 | 一级毛片播放 |