Html5實現文件異步上傳

HTML HTML5 jQuery Flash IT優就業 2017-05-21

1 簡介

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

2 Html代碼

<form id="myForm">

3 JQuery上傳

$("#submit-btn").on('click', function() {

4 JQuery文件大小驗證

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

$('#u_photo').on('change', function() { var file = this.files[0]; if (file.size > 1024*1000) {

5 JQuery進度條

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

xhr: function() { var myXhr = $.ajaxSettings.xhr(); if (myXhr.upload) {

6 springMVC服務端

6.1 maven依賴

<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) {

7 兼容性

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

8 推薦閱讀

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

JQuery File Uploader

想了解更多IT知識,更多就業知識可關注:

優就業官網:http://www.ujiuye.com/

優就業就業促進計劃:http://www.ujiuye.com/zt/jycj/?wt.bd=zy35844

在線視頻學習:http://xue.ujiuye.com/

相關推薦

推薦中...