jQuery File Upload 是一個Jquery文件上傳組件,支持多文件上傳、取消、刪除,上傳前縮略圖預覽、列表顯示圖片大小,支持上傳進度條顯示等,如下就介紹一下該插件的簡單使用javascript
一、須要加載的js文件有php
jquery.js,html
jquery-ui-widget.js,java
jquery.iframe-transport.js,jquery
jquery.fileupload.jsjson
二、upload.js的配置服務器
a、html代碼函數
<input type="file" id='file'> <input type="button" value="提交" id='submit'>
b、與頁面綁定的javascript代碼post
$('#submit').click(function () { if (currentFile) { //動態的傳輸參數 currentFile.formData = {id:123}; //進行文件提交 currentFile.submit(); } else { utils.error('請傳入.xlsx文件'); } });
c、javascript代碼ui
$('#file').fileupload({ //type: 文件上傳HTTP請求方式,能夠選擇「POST」,「PUT」或者"PATCH", type: 'POST', //url:請求發送的目標url,默認爲post方式 url: '/admin/qa/upload-file', //dataType:但願從服務器返回的數據類型,默認"json" dataType: 'json', //formData:須要傳輸的參數,這裏是靜態的傳輸,若是須要動態的傳輸須要在add這個進程裏面進行傳輸 formData: {id: 123}, //autoUpload:是否自動上傳,即當文件放入file以後便自動上傳,默認爲true autoUpload: false, //acceptFileTypes:容許上傳的的文件類型 acceptFileTypes: /(\.|\/)xlsx$/i, //maxFileSize: 最大上傳文件大小 maxFileSize: 1, //minFileSize:最小上傳文件大小,單位B minFileSize: 1, //previewMaxWidth : 圖片預覽區域最大寬度 //添加文件後觸發 add: function (ev, data) { currentFile = null; $('#result-panel').html(''); var name = data.files[0].name; if (/(\.|\/)xlsx$/i.test(name)) { $('#xlsFileShow').html(name); //data裏面包含些方法,若是submit提交這個API,能夠根據用戶的需求進行提交 //若是須要動態的傳參能夠用data.formData=123,進行傳輸 currentFile = data; //執行若是不符合的條件 } else { //執行若是傳入的文件名稱不符合正則匹配的代碼 } }, //當一個單獨的文件處理隊列結束(完成或失敗時)觸發 progressalways: function (e, data) { }, //全局上傳處理事件的回調函數,即上傳過程時觸發 progressall: function (e, data) { //進度條能夠用data.loaded與data.total的比進行完成 }, //上傳請求失敗時觸發的回調函數,若是服務器返回一個帶有error屬性的json響應這個函數將不會被觸發 fail: function (e, data) { }, // 上傳請求成功時觸發的回調函數,若是服務器返回一個帶有error屬性的json響應這個函數也會被觸發 done: function (e, data) { }, //上傳請求結束時(成功,錯誤或者停止)都會被觸發。 always: function (e, data) { } })
具體的官方文檔地址 :