javascript实现异步上传图片
来源:互联网 发布:淘宝 大麦网官方旗舰店 编辑:程序博客网 时间:2024/06/07 02:39
最近遇到图片上传的需求,由于第一次在移动端尝试写上传,还是小心为上,做了一个简单的demo,便于在此基础之上慢慢完善。
html代码:
<form id="uploadForm" action="http://storage.test.com/file/upload" method="post" enctype="multipart/form-data"> <input type="hidden" name="key" id="key" value="VTZ18HM64#D_L3WX" /> <input type="file" name="uploadFiles" value="" id="fileImage" multiple='multiple' /> <div class="upload_submit"> <button type="button" id="fileSubmit" class="upload_btn">保存</button> </div></form>
js代码:
var Fileupload = { fileInput: $("#fileImage").get(0), dragDrop: $("#fileDragArea").get(0), upButton: $("#fileSubmit").get(0), url: $("#uploadForm").attr("action"), })(), //文件上传 funUploadFile: function() { var self = this; for (var i = 0, file; file = this.fileFilter[i]; i++) { (function(file) { var xhr = new XMLHttpRequest(); if (xhr.upload) { // 上传中 xhr.upload.addEventListener("progress", function(e) { self.onProgress(file, e.loaded, e.total); }, false); // 文件上传成功或是失败 xhr.onreadystatechange = function(e) { if (xhr.readyState == 4) { if (xhr.status == 200) { self.onSuccess(JSON.parse(xhr.responseText)); self.funDeleteFile(file); if (!self.fileFilter.length) { //全部完毕 self.onComplete(); } } else { self.onFailure(file, xhr.responseText); } } }; //准备FormData对象 var formData = new FormData(); //将文件放入FormData对象中 formData.append('uploadFiles', file); // 开始上传 xhr.open("POST", self.url, true); // xhr.setRequestHeader("Content-Type","multipart/form-data"); xhr.send(formData); } })(file); } }, init: function() { var self = this; //上传按钮提交 if (this.upButton) { console.log('提示: 当前存储服务器地址', this.url) this.upButton.addEventListener("click", function(e) { self.funUploadFile(e); }, false); } self.bindEvent(); } }; Fileupload = $.extend(Fileupload); Fileupload.init();
类似博文可参考:https://segmentfault.com/a/1190000008304339
阅读全文
0 0
- javascript实现异步上传图片
- javascript 使用FormData实现图片/文件异步上传
- Jquery实现异步上传图片
- Jquery实现异步上传图片
- Jquery实现异步上传图片
- Ajax实现异步上传图片
- 异步上传图片实现思路
- Jquery实现异步上传图片
- JavaScript实现图片上传预览
- jQuery实现异步上传图片(二)
- HTML5实现图片文件异步上传
- jQuery实现异步上传图片(二)
- html+servlet实现多图片异步上传
- ajaxfileupload.js 实现异步上传图片
- JFinal+ajaxfileupload实现图片的异步上传
- JFinal+WebUploader实现图片的异步上传
- spring mvc+ajaxfileupload 实现异步上传图片
- HTML5实现图片文件异步上传
- hdu 5438 Ponds(并查集/拓扑排列)
- 问题二:win10+64 自动升级系统后,启动CentOS失败
- llvm Kaleidoscope tutorial 学习记录(1)
- 学龄1年的android小白2个月独立开发资深项目,还上了何俊林的推荐榜,他是怎么做到的(附项目源码)
- 替换dex实现热修复
- javascript实现异步上传图片
- Java 抽象类与接口
- Spring实现原理分析(二十六).Spring Boot关于嵌入式servlet容器
- Ali-Java编码规约插件,并检查编码规范
- [Python]《Python编程:从入门到实践》外星人入侵(一)
- C
- 异常断电导致PostgreSQL无法连接
- java线程
- Java方法的可变参数个数