如何利用jquery做出文件上传加载

php中世界最好的语言
풀어 주다: 2018-06-15 15:39:32
원래의
1269명이 탐색했습니다.

这次给大家带来如何利用jquery做出文件上传加载,利用jquery做出文件上传加载的注意事项有哪些,下面就是实战案例,一起来看一下。

通过对文件的拖动实现文件的上传,主要用到的是HTML5的ondrop事件,上传内容通道FormData传输:

//进度条 

0%

//要拖动到的地方

로그인 후 복사

js:

var dz = $('#main_content_center'); dz.ondragover = function(ev) { //阻止浏览器默认打开文件的操作 ev.preventDefault(); } dz.ondrop = function(ev) { ev.preventDefault(); var files = ev.dataTransfer.files; var len = files.length,i = 0; while (i < len) { var filesName=files[i].name; var extStart=filesName.lastIndexOf("."); var ext=filesName.substring(extStart,filesName.length).toUpperCase(); if(ext!=".JPG"&&ext!=".PNG"&&ext!=".XML"){ //判断是否是需要的问件类型 TS.errorAlert("请选择.jpg、.png、.xml类型的文件上传!"); return false; }else{ test(files[i]); } i++; } $(".parent-dlg").show(); } function test(a){ var formData = new FormData(); formData.append("name", a.name); formData.append("size", a.size); formData.append("data", a); $.ajax({ url:'', type:'post', data:formData, cache: false, processData: false, contentType: false, xhr: function(){ var xhr = $.ajaxSettings.xhr(); if(onprogress && xhr.upload) { xhr.upload.addEventListener("progress" , onprogress, false); return xhr; } } }) }; function onprogress(evt){ var loaded = evt.loaded; //已经上传大小情况 var tot = evt.total; //附件总大小 var per = Math.floor(100*loaded/tot); //已经上传的百分比 $(".progress-label").html( per +"%" ); $(".son").css("width" , per +"%"); if(per>=100){ $(".parent-dlg").hide(); } }
로그인 후 복사

 进度条css:

.parent-dlg{position: absolute;width:400px; height:20px; border:1px solid #aaaaaa;border-radius:3px;top:30%;left:50%;z-index:9999;margin-left:-200px;display:none;} .parent-dlg .progress-label{position: absolute;left: 50%;top: 4px;font-weight: bold;text-shadow: 1px 1px 0 #fff;} .parent-dlg .son {width:0; height:100%; background-color:#cccccc; text-align:center; line-height:20px; font-size:16px; font-weight:bold;}
로그인 후 복사

 此内容只是一个大概的文件上传技术方向,可根据自己的项目进行改进! 

相信看了本文案例你已经掌握了方法,更多精彩请关注php中文网其它相关文章!

推荐阅读:

webpack.config.js参数使用教程

如何在项目中使用p5.js键盘交互

위 내용은 如何利用jquery做出文件上传加载의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
최신 이슈
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿
회사 소개 부인 성명 Sitemap
PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!