XMLHttpRequest (POST) 在 IE 中被忽略
XMLHttpRequest (POST) is ignored in IE
我使用 XMLHttpRequest 将数据 post 发送到服务器。它看起来像这样:
var xhr = new XMLHttpRequest();
var url = 'http://myurl/post';
xhr.open("POST", url, true);
xhr.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
xhr.onreadystatechange = function() {
if (xhr.readyState == 4 && xhr.status == 200) {
if (xhr.status == 200) {
leaveEditMode();
} else {
initOverlay('Error: ' + xhr.statusText);
}
}
};
xhr.send(
'StringName=' + $activeElement.dataset.name + '&' +
'Text=' + encodeURIComponent($activeElement.innerHTML) + '&' +
'Language=' + userLanguage
);
此代码在 Chrome、FireFox 和 Opera 中运行良好。但在 IE11 中它没有。没有错误,我从请求中得到状态码 200。但是数据没有被 posted。似乎请求被忽略了。
有什么想法吗?我尝试了 anti-cache-header - 没有。
感谢您的帮助! :-)
问题很简单,参数 userLanguage 设置不正确,服务器没有发送适当的响应。
我使用 XMLHttpRequest 将数据 post 发送到服务器。它看起来像这样:
var xhr = new XMLHttpRequest();
var url = 'http://myurl/post';
xhr.open("POST", url, true);
xhr.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
xhr.onreadystatechange = function() {
if (xhr.readyState == 4 && xhr.status == 200) {
if (xhr.status == 200) {
leaveEditMode();
} else {
initOverlay('Error: ' + xhr.statusText);
}
}
};
xhr.send(
'StringName=' + $activeElement.dataset.name + '&' +
'Text=' + encodeURIComponent($activeElement.innerHTML) + '&' +
'Language=' + userLanguage
);
此代码在 Chrome、FireFox 和 Opera 中运行良好。但在 IE11 中它没有。没有错误,我从请求中得到状态码 200。但是数据没有被 posted。似乎请求被忽略了。
有什么想法吗?我尝试了 anti-cache-header - 没有。
感谢您的帮助! :-)
问题很简单,参数 userLanguage 设置不正确,服务器没有发送适当的响应。