我对这段代码有一些问题。我将使用此代码而不是polyfill。代码可以使用Firefox、Chrome、Opera和MS Edge运行,但Internet Explorer 11没有响应。有没有人能给我一个排除故障的提示。
function fetchFile(file,method,params,target) {
const controller = new AbortController();
const signal = controller.signal;
setTimeout(controller.abort.bind(controller), 5000);
var options = { method: method, signal };
if (params != 'default') {
switch (method) { case 'GET': file = file+'?'+params; break;
case 'POST': var data = params; break; default: data = 'data'; break;}
}
switch (method) { case 'POST': options.body = data; options.headers = {"Content-Type": "application/x-www-form-urlencoded"}; break;}
fetch(file, options).then(function (response) {
return response.text();
}).then(function (data) {
document.getElementById(target).innerHTML = data;
switch (data) {case '': loadXhttp(file,method,params,target); break;}
}).catch(function (data) {
switch (error.name) {
case 'AbortError': var error = 'Abort Error'; break;
default: error = 'Other Error'; break;}
document.write(error);
});
}
function loadXhttp(file,method,params,target) {
var xhttp = new XMLHttpRequest();
xhttp.onreadystatechange = function() {
if (this.readyState == 4 && this.status == 200) {
document.getElementById(target).innerHTML = this.responseText;
}
};
xhttp.open(method, file, true);
switch (method) {case 'GET': var send = null; break;
case 'POST': xhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
send = params; break;}
xhttp.send(send);
}
谢谢。
致以最好的问候,马库斯
https://stackoverflow.com/questions/52552498
复制相似问题