国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 語言 > JavaScript > 正文

無刷新上傳文件并返回自定義值

2024-05-06 16:22:16
字體:
來源:轉載
供稿:網(wǎng)友

本文給大家簡單分享了一下個人項目中解決無刷新上傳文件的方法和示例,有需要的小伙伴可以參考下。

今天開發(fā)過程中遇到了這樣一個問題:需要將Excel上傳至服務器進行解析,但是在文檔不合適的情況下希望可以不刷新頁面提示用戶文檔不合適。冥思苦想了半天,在網(wǎng)上找了不少資料最終試驗成功,在此分享下處理方法:

首先先說下處理思路:在頁面上添加一個隱藏的iframe,設置form表單的target屬性設置為iframe的id,這樣form提交時會將excel文件以文件流的形式傳到后臺,在后臺接收后可進行自定義操作,之后返回的信息將顯示在iframe中而不進行跳轉,iframe之前設置為隱藏,所以頁面不會有變化,然后我們需要監(jiān)聽iframe內(nèi)容的變化,然后將內(nèi)容傳入主窗口中的JS方法進行下一步的自定義處理。

頁面代碼如下:

 

 
  1. <form id="input" action="importExcel.jhtml" method="post" enctype="multipart/form-data" target="hiddenIFrame"
  2.   <input id="excelFile" name="file" type="file" /> 
  3.   <input type="submit" class="button" value="導入excel"/> 
  4. </form> 
  5. <iframe id='hiddenIFrame' name='hiddenIFrame' style="display:none;"></iframe> 

JS代碼如下(需引入jqeury):

 

 
  1. $(function(){ 
  2. $("#hiddenIFrame").load(function(){ 
  3. var wnd = this.contentWindow; 
  4. var str = $(wnd.document.body).html(); 
  5. callback(str); 
  6. }); 
  7. }) 
  8.  
  9. function callback(info){ 
  10. alert(info); 

后臺代碼就不過多介紹了與傳統(tǒng)提交一樣,后臺會根據(jù)input組件的name值獲取到一個同名的文件流(例如上面頁面代碼中input組件的name是file,那么后臺接收到的是一個名字叫file的文件流),接收后即可進行自定義操作。

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表

圖片精選

主站蜘蛛池模板: 郧西县| 昌黎县| 淮安市| 华容县| 许昌市| 嘉义市| 长海县| 恭城| 仪陇县| 金门县| 昭苏县| 柞水县| 英山县| 刚察县| 阳泉市| 瑞昌市| 山阳县| 湄潭县| 古丈县| 翁源县| 无极县| 汪清县| 武功县| 奉新县| 方山县| 册亨县| 通辽市| 西和县| 宜黄县| 卫辉市| 湾仔区| 太仆寺旗| 赤水市| 华池县| 吉木萨尔县| 洛川县| 阜新市| 土默特左旗| 双桥区| 罗山县| 河北省|