在我們前端進(jìn)行表單提交的時(shí)候,有時(shí)候會(huì)出現(xiàn)這種情況:Failed to convert? ?java.lang.String? ? to java.util.List
創(chuàng)新互聯(lián)建站服務(wù)項(xiàng)目包括南岳網(wǎng)站建設(shè)、南岳網(wǎng)站制作、南岳網(wǎng)頁制作以及南岳網(wǎng)絡(luò)營銷策劃等。多年來,我們專注于互聯(lián)網(wǎng)行業(yè),利用自身積累的技術(shù)優(yōu)勢、行業(yè)經(jīng)驗(yàn)、深度合作伙伴關(guān)系等,向廣大中小型企業(yè)、政府機(jī)構(gòu)等提供互聯(lián)網(wǎng)行業(yè)的解決方案,南岳網(wǎng)站推廣取得了明顯的社會(huì)效益與經(jīng)濟(jì)效益。目前,我們服務(wù)的客戶以成都為中心已經(jīng)輻射到南岳省份的部分城市,未來相信會(huì)繼續(xù)擴(kuò)大服務(wù)區(qū)域并繼續(xù)獲得客戶的支持與信任!
等等。
例如:
我后臺定義一個(gè)對象:
? ?examPaper 包含? String userId,Float userScore, MultipartFile? examFile? 用戶id? ,試卷分?jǐn)?shù),試卷文件
對象外面? ?classPaper有: String classId? String className? ListexamPaper? examPaperList
這個(gè)時(shí)候,后臺接收為? ClassPaper
如果按照平常的 form-data? ?提交? 則應(yīng)按以下方式提交:
let? fd? = new FormData();
fd.append("classId?",classId?);
fd.append("className?",className?);
examPaperList.forEach((item,index) -{
?fd.append("examPaperList["+index+"].userId",item.userId);
?fd.append("examPaperList["+index+"].userScore",item.userScore);
?fd.append("examPaperList["+index+"].examFile?",item.examFile?);
});
以這種方式就可以實(shí)現(xiàn) 多附件? 一一 對應(yīng)提交。以避免對象轉(zhuǎn)換錯(cuò)誤問題。
我們只要用content創(chuàng)建一個(gè)ObjectURL并賦值給aLink即可解決文件類型的限制問題。
文件的自動(dòng)下載也挺好辦,自己構(gòu)建一個(gè)UI點(diǎn)擊事件,再自動(dòng)觸發(fā)下,就能實(shí)現(xiàn)自動(dòng)下載啦。
現(xiàn)在來看看最終代碼:
代碼如下:
function downloadFile(fileName, content){
var aLink = document.createElement('a');
var blob = new Blob([content]);
var evt = document.createEvent("HTMLEvents");
evt.initEvent("click", false, false);//initEvent 不加后兩個(gè)參數(shù)在FF下會(huì)報(bào)錯(cuò), 感謝 Barret Lee 的反饋
aLink.download = fileName;
aLink.href = URL.createObjectURL(blob);
aLink.dispatchEvent(evt);
}
現(xiàn)在,只要一調(diào)用downloadFile,文件就自動(dòng)下載了
js中獲取form表單中的附件名稱方法如下
1. 利用表單在文檔中的索引或表單的name屬性來引用表單
1 document.forms[i] // 得到頁面中的第i個(gè)表單 2 document.forms[formName] // 得到頁面中相應(yīng)name。
本文題目:javascript附件,js附件下載
分享URL:http://muchs.cn/article26/phggjg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供服務(wù)器托管、響應(yīng)式網(wǎng)站、Google、外貿(mào)網(wǎng)站建設(shè)、全網(wǎng)營銷推廣、外貿(mào)建站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)