pbootcms网站模板|日韩1区2区|织梦模板||网站源码|日韩1区2区|jquery建站特效-html5模板网

使用Html5實現(xiàn)異步上傳文件,支持跨域,帶有上傳進度條

下面小編就為大家?guī)硪黄褂肏tml5實現(xiàn)異步上傳文件,支持跨域,帶有上傳進度條。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

服務器準備IIS

需要設置IIS里面的HTTP響應標頭,如圖添加如下設置,添加這項“Access-Control-Allow-Origin”,只有添加了這行才能支持跨域,不然像Chrome瀏覽器會報錯

頁面代碼:

XML/HTML Code復制內(nèi)容到剪貼板
  1. <!DOCTYPE html>  
  2. <html>  
  3. <head>  
  4.     <meta http-equiv="content-type" content="text/html;charset=utf-8">  
  5.     <meta name="format-detection" content="telephone=no">  
  6.     <meta name="msapplication-tap-highlight" content="no">  
  7.     <meta name="viewport" content="user-scalable=no, initial-scale=1, maximum-scale=1, minimum-scale=1, width=device-width">  
  8.     <title>Html5上傳文件</title>  
  9. </head>  
  10. <body>  
  11.     <div class="app">  
  12.         <h1>Html5上傳文件測試,帶進度條</h1>  
  13.         <div>  
  14.             <input type="file" value="" id="fileInput" name="files" onchange="fileSelected()" />  
  15.             <div style="margin:30px;">  
  16.                 <input type="button" value="上傳" onclick="uploadFile()" />  
  17.             </div>  
  18.             <div style="margin:30px;">  
  19.                 <div id="fileName"></div>  
  20.                 <div id="fileSize"></div>  
  21.                 <div id="fileType"></div>  
  22.             </div>  
  23.             <div style="margin:30px;width:500px;height:15px;border:1px solid #aeaeae;">  
  24.                 <div id="progress" style="background:#4cff00;height:15px;width:0%;"></div>  
  25.                 <div id="percentNumber"></div>  
  26.             </div>  
  27.             <div style="margin:30px;">  
  28.                 <div id="msg"></div>  
  29.             </div>  
  30.         </div>  
  31.     </div>  
  32.     <script type="text/javascript">  
  33.         function fileSelected() {   
  34.             //重置狀態(tài)顯示   
  35.             document.getElementById("msg").innerHTML = "";   
  36.             document.getElementById('percentNumber').innerHTML = '';   
  37.             document.getElementById("progress").style.width = "0%";   
  38.             var file = document.getElementById('fileInput').files[0];   
  39.             if (file) {   
  40.                 var fileSize = 0;   
  41.                 if (file.size > 1024 * 1024)   
  42.                     fileSize = (Math.round(file.size * 100 / (1024 * 1024)) / 100).toString() + 'MB';   
  43.                 else   
  44.                     fileSize = (Math.round(file.size * 100 / 1024) / 100).toString() + 'KB';   
  45.                 document.getElementById('fileName').innerHTML = 'Name: ' + file.name;   
  46.                 document.getElementById('fileSize').innerHTML = 'Size: ' + fileSize;   
  47.                 document.getElementById('fileType').innerHTML = 'Type: ' + file.type;   
  48.             }   
  49.         }   
  50.   
  51.   
  52.         function uploadFile() {   
  53.             var fd = new FormData();   
  54.             fd.append("fileInput", document.getElementById('fileInput').files[0]);   
  55.             var xhr = new XMLHttpRequest();   
  56.             xhr.upload.addEventListener("progress", uploadProgress, false);   
  57.             xhr.addEventListener("load", uploadComplete, false);   
  58.             xhr.addEventListener("error", uploadFailed, false);   
  59.             xhr.addEventListener("abort", uploadCanceled, false);               
  60.             xhr.open("POST", "http://10.0.0.200:9001/Home/Upload");//修改為自己服務器接口地址   
  61.             //xhr.setRequestHeader("Access-Control-Allow-Origin", "*");//需要在IIS里面配置,就可以跨域請求了   
  62.             //xhr.setRequestHeader("Content-Type", "multipart/form-data");   
  63.             xhr.send(fd);   
  64.         }   
  65.         function uploadProgress(evt) {   
  66.             if (evt.lengthComputable) {   
  67.                 var percentComplete = Math.round(evt.loaded * 100 / evt.total);   
  68.                 document.getElementById('percentNumber').innerHTML = percentComplete + '%';   
  69.                 var jindutiao = document.getElementById("progress");   
  70.                 jindutiao.style.width = percentComplete + "%";   
  71.             }   
  72.             else {   
  73.                 document.getElementById('percentNumber').innerHTML = '不支持進度計算';   
  74.             }   
  75.         }   
  76.         function uploadComplete(evt) {   
  77.             //evt.target.responseText   
  78.             document.getElementById("msg").innerHTML = "上傳成功";   
  79.         }   
  80.         function uploadFailed(evt) {   
  81.             document.getElementById("msg").innerHTML = "上傳過程中有一個錯誤";   
  82.         }   
  83.         function uploadCanceled(evt) {   
  84.             document.getElementById("msg").innerHTML = "用戶取消了上傳或者瀏覽器刪除了連接";   
  85.         }   
  86.     </script>  
  87. </body>  
  88. </html>  

以上這篇使用Html5實現(xiàn)異步上傳文件,支持跨域,帶有上傳進度條就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持。

【網(wǎng)站聲明】本站除付費源碼經(jīng)過測試外,其他素材未做測試,不保證完整性,網(wǎng)站上部分源碼僅限學習交流,請勿用于商業(yè)用途。如損害你的權益請聯(lián)系客服QQ:2655101040 給予處理,謝謝支持。

相關文檔推薦

這篇文章主要介紹了有關HTML5頁面在iPhoneX適配問題,需要的朋友可以參考下
本篇文章主要介紹了html5中canvas圖表實現(xiàn)柱狀圖的示例,本文使用canvas來實現(xiàn)一個圖表,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
Adobe公司出品的多媒體處理軟件產(chǎn)品線較多,涵蓋了音視頻編輯、圖像處理、平面設計、影視后期等領域。這篇文章主要介紹了Adobe Html5 Extension開發(fā)初體驗圖文教程,非常不錯,需要的朋
這篇文章主要介紹了基于HTML5的WebGL經(jīng)典3D虛擬機房漫游動畫,需要的朋友可以參考下
這篇文章主要介紹了html5實現(xiàn)移動端適配完美寫法,需要的朋友可以參考下
本篇文章主要介紹了HTML5響應式(自適應)網(wǎng)頁設計的實現(xiàn),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
主站蜘蛛池模板: MVE振动电机_MVE震动电机_MVE卧式振打电机-河南新乡德诚生产厂家 | 磁力轮,磁力联轴器,磁齿轮,钕铁硼磁铁-北京磁运达厂家 | AGV叉车|无人叉车|AGV智能叉车|AGV搬运车-江西丹巴赫机器人股份有限公司 | 离子色谱自动进样器-青岛艾力析实验科技有限公司 | 青岛球场围网,青岛车间隔离网,青岛机器人围栏,青岛水源地围网,青岛围网,青岛隔离栅-青岛晟腾金属制品有限公司 | 不锈钢水管-不锈钢燃气管-卫生级不锈钢管件-不锈钢食品级水管-广东双兴新材料集团有限公司 | 威客电竞(vk·game)·电子竞技赛事官网| 网站建设,北京网站建设,北京网站建设公司,网站系统开发,北京网站制作公司,响应式网站,做网站公司,海淀做网站,朝阳做网站,昌平做网站,建站公司 | 泰兴市热钻机械有限公司-热熔钻孔机-数控热熔钻-热熔钻孔攻牙一体机 | 金属波纹补偿器厂家_不锈钢膨胀节价格_非金属伸缩节定制-庆达补偿器 | 沥青车辙成型机-车托式混凝土取芯机-混凝土塑料试模|鑫高仪器 | 带式压滤机_污泥压滤机_污泥脱水机_带式过滤机_带式压滤机厂家-河南恒磊环保设备有限公司 | 电动百叶窗,开窗器,电动遮阳百叶,电动开窗机生产厂家-徐州鑫友工控科技发展有限公司 | 中空玻璃生产线,玻璃加工设备,全自动封胶线,铝条折弯机,双组份打胶机,丁基胶/卧式/立式全自动涂布机,玻璃设备-山东昌盛数控设备有限公司 | 釜溪印象网络 - Powered by Discuz! | 北京发电车出租-发电机租赁公司-柴油发电机厂家 - 北京明旺盛安机电设备有限公司 | 深圳法律咨询【24小时在线】深圳律师咨询免费 | 水篦子|雨篦子|镀锌格栅雨水篦子|不锈钢排水篦子|地下车库水箅子—安平县云航丝网制品厂 | 安徽千住锡膏_安徽阿尔法锡膏锡条_安徽唯特偶锡膏_卡夫特胶水-芜湖荣亮电子科技有限公司 | hdpe土工膜-防渗膜-复合土工膜-长丝土工布价格-厂家直销「恒阳新材料」-山东恒阳新材料有限公司 ETFE膜结构_PTFE膜结构_空间钢结构_膜结构_张拉膜_浙江萬豪空间结构集团有限公司 | 玻璃钢罐_玻璃钢储罐_盐酸罐厂家-河北华盛节能设备有限公司 | LHH药品稳定性试验箱-BPS系列恒温恒湿箱-意大利超低温冰箱-上海一恒科学仪器有限公司 | UV-1800紫外光度计-紫外可见光度计厂家-翱艺仪器(上海)有限公司 | 滚珠丝杆升降机_螺旋升降机_丝杠升降机-德迈传动 | 湖南教师资格网-湖南教师资格证考试网 | 玻纤土工格栅_钢塑格栅_PP焊接_单双向塑料土工格栅_复合防裂布厂家_山东大庚工程材料科技有限公司 | 铝合金线槽_铝型材加工_空调挡水板厂家-江阴炜福金属制品有限公司 | 爱佩恒温恒湿测试箱|高低温实验箱|高低温冲击试验箱|冷热冲击试验箱-您身边的模拟环境试验设备技术专家-合作热线:400-6727-800-广东爱佩试验设备有限公司 | LCD3D打印机|教育|桌面|光固化|FDM3D打印机|3D打印设备-广州造维科技有限公司 | 杭州标识标牌|文化墙|展厅|导视|户内外广告|发光字|灯箱|铭阳制作公司 - 杭州标识标牌|文化墙|展厅|导视|户内外广告|发光字|灯箱|铭阳制作公司 | 挨踢网-大家的导航!| 海尔生物医疗四川代理商,海尔低温冰箱四川销售-成都壹科医疗器械有限公司 | 广州中央空调回收,二手中央空调回收,旧空调回收,制冷设备回收,冷气机组回收公司-广州益夫制冷设备回收公司 | 压砖机、液压制砖机、静压砖机、环保砖机生产厂家—杜甫机械 | 无锡装修装潢公司,口碑好的装饰装修公司-无锡索美装饰设计工程有限公司 | 工业用品一站式采购平台|南创工品汇-官网|广州南创 | 安平县鑫川金属丝网制品有限公司,声屏障,高速声屏障,百叶孔声屏障,大弧形声屏障,凹凸穿孔声屏障,铁路声屏障,顶部弧形声屏障,玻璃钢吸音板 | 防水套管|柔性防水套管|伸缩器|伸缩接头|传力接头-河南伟创管道 防水套管_柔性防水套管_刚性防水套管-巩义市润达管道设备制造有限公司 | 钢化玻璃膜|手机钢化膜|钢化膜厂家|手机保护膜-【东莞市大象电子科技有限公司】 | 苏州工作服定做-工作服定制-工作服厂家网站-尺品服饰科技(苏州)有限公司 | 药品仓库用除湿机-变电站用防爆空调-油漆房用防爆空调-杭州特奥环保科技有限公司 |