我正在使用 ajax 请求(POST 方法)提交表单,并检查响应中的 HTTP 状态代码以查看它是否成功。
它在 Firefox 上运行良好,但在 MSIE-8 上当然不行。提交实际上工作正常,我可以检查我的服务器并确认提交工作并且服务器以状态码 204 响应。同样,firefox 正确地从请求对象中给了我 204 的状态码,但 IE 给出了一个状态码1223 个。
任何想法如何在 MSIE 中获得准确的状态代码?提交表单并检查响应的代码如下。
var req = new XMLHttpRequest();
req.open("POST", "p.php?i=" + self.__isid, true);
//Send the proper header information along with the request
req.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
req.setRequestHeader("Content-length", formdata.length);
req.setRequestHeader("Connection", "close");
req.onreadystatechange = function()
{
if(req.readyState == 4)
{
if(req.status == 204 || req.status == 200)
{
//Success. Update the feed.
self.__postFeed.update();
self.__form.reset();
}
else
{
//TODO: Better error handling.
alert("Error submitting post:\n" + req.responseText);
}
}
}
req.send(formdata);