使用plupload自定義參數(shù)實現(xiàn)多文件上傳
1、在開發(fā)中可能需要用戶附件上傳的功能,實現(xiàn)批量上傳功能其實就將多個上傳任務(wù)放到一個集合中,分別上傳。
2,使用plupload js插件可以很輕松的實現(xiàn)帶參數(shù)的多文件上傳
3、具體js實現(xiàn)方式
<script type="text/javascript"> var map={};//文件id為key,文件類型為value的集合 // Custom example logic var uploader = new plupload.Uploader({ runtimes : 'html5,flash,silverlight,html4', browse_button : 'pickfiles', // you can pass in id... container : document.getElementById('container'), // ... or DOM Element itself url : '../action/photoUpload.jsp', flash_swf_url : '../../js/Moxie.swf', silverlight_xap_url : '../../js/Moxie.xap', filters : { max_file_size : '5mb', mime_types : [ { title : "圖片類型", extensions : "jpg,gif,png" } ] }, init : { PostInit : function() { document.getElementById('uploadfiles').onclick = function() { uploader.start(); return false; }; }, BeforeUpload:function(up,file){ //重點在這里,上傳的時候自定義參數(shù)信息 uploader.setOption("multipart_params",{"apptype":${param.type},"id":${param.id},"fileType":map[file.id]}); }, FileUploaded:function(up,file){ $("#"+file.id+"btn").parent().html("上傳完畢"); $("#"+file.id+"btn").remove(); }, FilesAdded : function(up, files) { if($("#fileType").val()==1){ alert("請選擇附件類型!"); //清空剛才選擇的文件 plupload.each(files,function(file) { uploader.removeFile(file.id); }); return false; } plupload.each(files,function(file) { map[file.id]=$("#fileType").val(); $("#uploadTable").append("<tr id='"+file.id+"tr'><td>"+$("#fileType").val()+"</td><td>"+file.name+"</td><td><button type='button' id='"+file.id+"btn' onclick=del('"+file.id+"')>刪除</button> </td><td id='"+file.id+"_progress'></td></tr>"); }); }, UploadProgress : function(up, file) { $("#"+file.id+"_progress").html('<span>'+ file.percent + "%</span>"); }, Error : function(up, err) { alert("此文件上傳失??!"); } } }); uploader.init(); //根據(jù)文件id刪除此文件,并且在table中刪除此文件的信息 function del(id){ uploader.removeFile(id); $("#"+id+"tr").remove(); map[id]=""; } </script>
其他參數(shù)在其官網(wǎng)上:http://www.plupload.com/
宅男程序猿,文采不行,如果看著累直接復(fù)制js,注意頁面上需要有:
<div id="filelist"></div> <div id="container"> <center> 提示:必須上傳 "商戶營業(yè)執(zhí)照","稅務(wù)登記證明","企業(yè)法人身份證","考察照片","商戶信息調(diào)查表","商戶協(xié)議" 才能提交審批! </center> <label>附件類型:</label> <select name="fileType" id="fileType" > <option value="1">-------請選擇-----</option> <option value="商戶營業(yè)執(zhí)照">商戶營業(yè)執(zhí)照</option> <option value="稅務(wù)登記證明">稅務(wù)登記證明</option> <option value="商戶信息變更表">商戶信息變更表</option> <option value="其他">其他</option> </select> <button class="button" id="pickfiles">選擇文件</button> <button class="button" id="uploadfiles">批量上傳</button> <button class="button" onclick="window.location.reload()">刷新</button> <button class="button" onclick="window.close()">關(guān)閉窗口</button> <table style="width: 600px" id="uploadTable" border="1"> <tr> <td>文件類型</td> <td>文件名稱</td> <td>操作</td> <td>上傳進度</td> </tr> </table> </div>
以上所述是小編給大家介紹的使用plupload自定義參數(shù)實現(xiàn)多文件上傳,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
相關(guān)文章
JavaScript SHA1加密算法實現(xiàn)詳細代碼
這篇文章主要為大家詳細介紹了JavaScript SHA1加密算法實現(xiàn)代碼,具有一定的參考價值,感興趣的朋友可以參考一下2016-10-10JavaScript 實現(xiàn) Tab 點擊切換實例代碼
Tab 選項卡切換效果在現(xiàn)如今的網(wǎng)頁中,運用的也是比較多的,包括點擊切換、滑動切換、延遲切換、自動切換等多種效果,在這篇博文里,我們是通過原生 JavaScript 來實現(xiàn) Tab 點擊切換的效果。2017-03-03JS運動相關(guān)知識點小結(jié)(附彈性運動示例)
這篇文章主要介紹了JS運動相關(guān)知識點,總結(jié)分析了JavaScript運動所涉及的相關(guān)知識點與注意事項,并附帶了一個JavaScript彈性運動的實例供大家參考,需要的朋友可以參考下2016-01-01JavaScript實現(xiàn)系統(tǒng)防掛機(無操作彈窗)的示例詳解
在一些學習系統(tǒng),或者考試系統(tǒng)中。一旦出現(xiàn)長時間未操作,就會判定這個人不在場。所以就會進行退出系統(tǒng),處于對安全和系統(tǒng)負擔還有業(yè)務(wù)的需求。本文就來用JavaScript做一個系統(tǒng)防掛機功能,需要的可以參考一下2023-01-01webpack常用構(gòu)建優(yōu)化策略小結(jié)
這篇文章主要介紹了webpack常用構(gòu)建優(yōu)化策略小結(jié),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2019-11-11URLSearchParams快速解析URL查詢參數(shù)實現(xiàn)
這篇文章主要為大家介紹了URLSearchParams快速解析URL查詢參數(shù)實現(xiàn),有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2023-06-06