【发布时间】:2014-03-14 00:42:53
【问题描述】:
我使用 formData 和一个 XMLHttpRequest 发送一系列图像和数据,它将数据上传到数据库并将图像上传到 S3。
我遇到的问题是进度条立即跳到 100%。
var xhr = new XMLHttpRequest();
xhr.open('POST', '/gateway/add');
xhr.setRequestHeader('X-Requested-With', 'XMLHttpRequest');
xhr.onload = function () {
};
xhr.upload.onprogress = function (event){
if(event.lengthComputable){
var complete = (event.loaded / event.total * 100 | 0);
$('.meter').css('width', complete+'%');
}
};
xhr.send(formData);
【问题讨论】:
-
试着在 var xhr = new XMLHttpRequest(); 之后移动你的听众还要确保你的文件足够大。
-
我觉得还是用
xhr.upload.addEventListener("progress", ...)比较好 -
我的意思是,对于基本调试,您应该记录
complete值,以确保它甚至可以攀升,而不仅仅是达到 100。 -
我遇到了同样的问题,我使用了 css 过渡。 :)
标签: javascript jquery