在新版ajax中可以上传图片等二进制文件,并且能够监测上传进度。

1、FormData。通过FormData对象来构建提交的二进制数据。用法如下:

var oFormData = new FormData();    
oFormData.append('file', oMyFile.files[0]);
xhr.send(oFormData)

通过向FormData对象下的append方法来添加二进制文件,然后将FormData对象传递给后台。

 

2、upload对象,用于监测上传的进度

在XMLHttpRequest对象下有一个upload对象,var oUpload = xhr.upload;

监听该对象的onprogress事件,ev.total表示上传的总量,ev.loaded表示已上传的量,用法如下:

oUpload.onprogress  = function(ev) {
    var iScale = ev.loaded / ev.total;            
    oDiv2.style.width = 300 * iScale + 'px';

}

 

posted on 2015-08-29 23:31  toodeep  阅读(494)  评论(0编辑  收藏  举报