1

XMLHttpRequest.responseText.length除了获取 AJAX 请求的当前下载进度之外,还有其他方法吗?

我问这个是因为 IE 只是放弃了“数据尚不可用”错误。其他浏览器没有问题,但我希望至少能够给出一些进展迹象。

4

2 回答 2

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 块

于 2012-11-15T17:23:34.600 回答
0

就 Internet Explorer 而言,该progress事件的支持仅限于版本 10,但您没有指定版本……</p>

rq.onprogress = function(e) {
    if(e.lengthComputable) {
        progressElement.textContent = Math.floor(e.loaded / e.total * 100) + "%";
    }
};
于 2012-12-02T22:23:26.667 回答