不成功,但是有一定的借鉴性

 /**
* @param base64Codes
* 图片的base64编码
*/
function sumitImageFile(base64Codes){
console.log(convertBase64UrlToBlob(base64Codes));
var formData = new FormData(); //这里连带form里的其他参数也一起提交了,如果不需要提交其他参数可以直接FormData无参数的构造函数 //convertBase64UrlToBlob函数是将base64编码转换;为Blob
formData.append("imageName",convertBase64UrlToBlob(base64Codes)); //append函数的第一个参数是后台获取数据的参数名,和html标签的input的name属性功能相同
try{ // upload("admin","img","haode",formData);
}catch(e){
console.log(e);
alert("TMD又错了!");
}
//ajax 提交form
$.ajax({
url : url,
type : "POST",
data : formData,
dataType:"json",
processData : false, // 告诉jQuery不要去处理发送的数据
contentType : false, // 告诉jQuery不要去设置Content-Type请求头
success:function(data){
console.log(data);
alert("hahaha");
},
xhr:function(){ //在jquery函数中直接使用ajax的XMLHttpRequest对象
var xhr = new XMLHttpRequest(); xhr.upload.addEventListener("progress", function(evt){
if (evt.lengthComputable) {
var percentComplete = Math.round(evt.loaded * 100 / evt.total);
console.log("正在提交."+percentComplete.toString() + '%'); //在控制台打印上传进度
}
}, false); return xhr;
} });
}
/*---------------------------------------------------------------------------------------------------------------*/
/**
* 将以base64的图片url数据转换为Blob
* @param urlData
* 用url方式表示的base64图片数据
*/
function convertBase64UrlToBlob(urlData){ var bytes=window.atob(urlData.split(',')[1]); //去掉url的头,并转换为byte //处理异常,将ascii码小于0的转换为大于0
var ab = new ArrayBuffer(bytes.length);
var ia = new Uint8Array(ab);
for (var i = 0; i < bytes.length; i++) {
ia[i] = bytes.charCodeAt(i);
}
return new Blob( [ab] , {type : 'image/jpeg'});
}

最新文章

  1. Qt qml 单例模式
  2. [原创]南水之源A*(A-Star)算法
  3. PHP Simple HTML DOM解析器
  4. 使Asp.net WebApi支持JSONP和Cors跨域访问
  5. python开发初期及二次开发C api
  6. sql server 存储过程、事务,增删改
  7. SQLServer 网络协议(一)
  8. Archlinux 升级 pacman 时遇到的问题及其解决
  9. 浏览器录宏重放软件-iMacros
  10. Django(十八)Model操作补充
  11. day28元类与异常查找
  12. 树莓派Opencv张正友棋盘标定法
  13. 解决Hibernate:could not initialize proxy - no Session(申明:来源于网络)
  14. Java学习路径及练手项目合集
  15. linux利用命令将一个盘上的所有复制到另一个盘上
  16. webpack打包提取css到独立文件
  17. 蓝桥杯 问题 1117: K-进制数 (递归)
  18. 如何区分一个系统是redhat centos ubuntu fedora debian中的哪一种
  19. python笔记02:列表与元素
  20. 移动端UI设计规范模板参考以及设计规范的好处

热门文章

  1. linux读取yaml文件的某个属性值
  2. python学习四(处理数据)
  3. Jenkins~通过WebDeploy实现自动部署
  4. ashx是什么文件
  5. ElasticSearch多个字段分词查询高亮显示
  6. JS 分页实现
  7. Docker的安全问题以及一些预防方案
  8. 一个关于document.write()的问题
  9. Linux常用操作2
  10. UVA Stacks of Flapjacks 栈排序