除XMLHttpRequest.responseText.length
之外还有其他方法可以获取AJAX请求的当前下载进度吗?
我问这个是因为IE只是放弃了“数据尚未可用”的错误。其他浏览器没有问题,但我希望能够至少给出一些进展指示。
答案 0 :(得分:0)
你应该为IE和其他浏览器定义单独的对象
if (window.XMLHttpRequest)
{
req = new XMLHttpRequest();
req.setRequestHeader('Content-Type', 'application/x-www-formurlencoded');
req.send(data);
} // branch for IE/Windows ActiveX version
else if (window.ActiveXObject)
{
req = new ActiveXObject('Microsoft.XMLHTTP');
.
.
.
}
你知道有多个xmlhttp
xmlhttp1.0,2.0,...
或者你可以制作一个try-catch块
答案 1 :(得分:0)
关于Internet Explorer的progress
事件支持is limited to version 10,但您未指定版本...
rq.onprogress = function(e) {
if(e.lengthComputable) {
progressElement.textContent = Math.floor(e.loaded / e.total * 100) + "%";
}
};