$.ajaxFileUpload

我用的是這個:https://github.com/carlcarl/AjaxFileUploadhtml

下載地址在這裏:http://files.cnblogs.com/files/kissdodog/ajaxfileupload_JS_File.rargit

AjaxFileUpload.js並非一個很出名的插件,只是別人寫好的放出來供你們用,原理都是建立隱藏的表單和iframe而後用JS去提交,得到返回值。github

當初作了個異步上傳的功能,選擇它由於它的配置方式比較像jQuery的AJAX,我很喜歡。ajax

ajaxFileUpload是一個異步上傳文件的jQuery插件 語法:$.ajaxFileUpload([options])json

options參數說明:安全

一、url           上傳處理程序地址。 2,fileElementId      須要上傳的文件域的ID,即「<input type="file">」的ID。 3,secureuri        是否啓用安全提交,默認爲false。 4,dataType        服務器返回的數據類型。能夠爲xml,script,json,html。若是不填寫,jQuery會自動判斷。 5,success        提交成功後自動執行的處理函數,參數data就是服務器返回的數據。 6,error          提交失敗自動執行的處理函數。 7,data           自定義參數。這個東西比較有用,當有數據是與上傳的圖片相關的時候,這個東西就要用到了。 8, type           當要提交自定義參數時,這個參數要設置成post服務器

使用方法: 1.引入ajaxfileupload.js 2.在HTML中寫出異步

<input id="fileInput" type="file" name="file"/>

3.在js中使用$.ajaxFileUploadide

// 上傳
		$.ajaxFileUpload({
			url : ctx + 'calculate/upload',
			secureuri : false,
			fileElementId : 'fileInput',
			dataType : 'json',
			success : function(data, status) {
				$("#progressbar").progressbar("value", 100);
				$("#download_div").show();
			},
			error : function(data, status) {
				$("#progressbar").hide();
				alert("上傳文件錯誤");
			}
		});

4.在controller中接收函數

public String upload(@RequestParam(value = "file", required = false) MultipartFile file,
			HttpServletRequest request, ModelMap model)

這樣接收的file就是上傳的文件了

相關文章
相關標籤/搜索