有關(guān)文件上傳 非ajax提交 得到后臺(tái)數(shù)據(jù)問(wèn)題
下文給大家介紹文件上傳非ajax提交得到后臺(tái)數(shù)據(jù)的操作方法,具體詳情如下所示;
<form name="configForm" id="configForm" method="post" action="" > .......... </form>
根據(jù)id獲得表單數(shù)據(jù)然后發(fā)送ajax請(qǐng)求,獲得后臺(tái)返回?cái)?shù)據(jù),處理數(shù)據(jù),完美。
但是如果需要上傳文件,
<tr> <td class="fontSize">請(qǐng)選擇文件:</td> <td><input type="" class="easyui-filebox" id="fileImport" name="file" value="" style="width:300px;"></td> </tr>
這個(gè)文件數(shù)據(jù)后臺(tái)得不到,表單數(shù)據(jù)這個(gè)file也是null,這時(shí)需要
<form name="configForm" id="configForm" method="post" action="" enctype="multipart/form-data" >
添加的這個(gè)enctype="mutipart/form-data" 后臺(tái)可以
@RequestMapping("/saveAppVersion")
@ResponseBody
public ModelMap saveAppVersion(String action, TbdAppVersion tbdAppVersion,
@RequestParam(value = "file") MultipartFile file) {....
}
接收。
但是必須要表單提交請(qǐng)求數(shù)據(jù),ajax仍然不行(具體原因可以百度。。)
<form name="configForm" id="configForm" method="post" action="/admin/systemConfig/saveAppVersion.do" enctype="multipart/form-data"> ...... </form>
easyui里面的js submit提交
handler : function() {
$("#configForm").submit();
}
那么問(wèn)題來(lái)了,提交過(guò)后如何獲得后臺(tái)返回?cái)?shù)據(jù)呢?
<form name="configForm" id="configForm" method="post" action="/admin/systemConfig/saveAppVersion.do" enctype="multipart/form-data" target="myIframe"> 。。。。。 </form> <iframe name="myIframe" id="if_json" style="display:none"> </iframe>
在表單里添加一個(gè)target,也就是說(shuō)提交成功返回的數(shù)據(jù)寫(xiě)在了name為myIframe的這個(gè)iframe中,只刷新這個(gè)iframe,接下來(lái)就是獲得這個(gè)數(shù)據(jù)了,
雖然百度不是什么好鳥(niǎo),但是有些東西還是可以找到的,比如以下獲取iframe數(shù)據(jù)的方法!
handler : function() {
$("#configForm").submit();
$("#if_json").load(function(){//獲取iframe中的內(nèi)容
var body = $(window.frames['myIframe'].document.body);
var data = eval('(' + body[0].textContent + ')');
if(data.resultCode && data.resultCode != 0){
.........
}else{
.........
}
});
}
以上所述是小編給大家介紹的有關(guān)文件上傳 非ajax提交 得到后臺(tái)數(shù)據(jù)問(wèn)題,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
- jQuery插件AjaxFileUpload實(shí)現(xiàn)ajax文件上傳
- 基于HTML5 Ajax實(shí)現(xiàn)文件上傳并顯示進(jìn)度條
- js HTML5 Ajax實(shí)現(xiàn)文件上傳進(jìn)度條功能
- 基于HTML5 Ajax文件上傳進(jìn)度條如何實(shí)現(xiàn)(jquery版本)
- 基于ajax實(shí)現(xiàn)文件上傳并顯示進(jìn)度條
- 原生JS封裝ajax 傳json,str,excel文件上傳提交表單(推薦)
- Ajax方式提交帶文件上傳的表單及隱藏iframe應(yīng)用
- asp.net 模擬提交有文件上傳的表單(通過(guò)http模擬上傳文件)
相關(guān)文章
extjs簡(jiǎn)介_(kāi)動(dòng)力節(jié)點(diǎn)Java學(xué)院整理
這篇文章主要介紹了extjs簡(jiǎn)介,ExtJS為開(kāi)發(fā)者在開(kāi)發(fā)富客戶(hù)的B/S應(yīng)用中提供豐富的UI組件,具有統(tǒng)一的主題,便于快速開(kāi)發(fā),提高效率2017-07-07
uni-app中onBackPress()監(jiān)聽(tīng)頁(yè)面返回(更新數(shù)據(jù))
這篇文章主要給大家介紹了關(guān)于uni-app中onBackPress()監(jiān)聽(tīng)頁(yè)面返回(更新數(shù)據(jù))的相關(guān)資料,在UniApp中,可以通過(guò)監(jiān)聽(tīng)頁(yè)面刷新的生命周期函數(shù)來(lái)監(jiān)聽(tīng)頁(yè)面的返回,然后重新調(diào)用接口進(jìn)行刷新,需要的朋友可以參考下2023-10-10
JavaScript超詳細(xì)實(shí)現(xiàn)網(wǎng)頁(yè)輪播圖
這篇文章主要介紹了JavaScript超詳細(xì)實(shí)現(xiàn)網(wǎng)頁(yè)輪播圖,我們經(jīng)常會(huì)看到各種輪播圖的效果,它們到底是怎樣實(shí)現(xiàn)的呢?今天我們就一起來(lái)看一下具體實(shí)現(xiàn)方法吧2021-12-12
如何正確使用javascript 來(lái)進(jìn)行我們的程序開(kāi)發(fā)
Javascript 正確使用方法,下面為大家介紹的是一個(gè)關(guān)于如何正確使用javascript 來(lái)進(jìn)行我們的程序開(kāi)發(fā),需要的朋友可以參考下2014-06-06
一文帶你掌握J(rèn)avaScript中的執(zhí)行上下文和作用域
作為一名前端工作人員,我們必須知道JavaScript內(nèi)部是如何執(zhí)行的。那對(duì)于執(zhí)行上下文和作用域的理解至關(guān)重要,無(wú)論是工作還是面試都是無(wú)法跳躍的一步,本文就來(lái)帶大家深入了解一下2023-02-02
微信小程序使用audio組件播放音樂(lè)功能示例【附源碼下載】
這篇文章主要介紹了微信小程序使用audio組件播放音樂(lè)功能,結(jié)合實(shí)例形式分析了微信小程序audio組件播放在線音樂(lè)相關(guān)操作技巧,并附帶源碼供讀者下載參考,需要的朋友可以參考下2017-12-12
three.js利用gpu選取物體并計(jì)算交點(diǎn)位置的方法示例
這篇文章主要給大家介紹了關(guān)于three.js利用gpu選取物體并計(jì)算交點(diǎn)位置的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用three.js具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-11-11
js多級(jí)樹(shù)形彈出一個(gè)小窗口層(非常好用)實(shí)例代碼
js多級(jí)樹(shù)形彈出一個(gè)小窗口層(非常好用)實(shí)例代碼,需要的朋友可以參考一下2013-03-03

