自上次 Chrome 更新以来,当应用程序尝试加载 XSLT 文档时,它会返回空。我发现,如果您尝试返回 this.responseXML,而 this.responseText 有效,则尝试执行 XMLHttpRequest 来加载 XLST 文件。然后你必须使用解析器将其转换为“application/xml”。在最新更新之前一直运行良好。
return new Promise(function (resolve) {
var req = new XMLHttpRequest();
req.open("GET", url);
if (typeof XSLTProcessor === 'undefined') {
try {
req.responseType = 'msxml-document';
}
catch (e) { console.log('error');}
}
req.onload = function () {
resolve(this.responseText);
//resolve(this.responseXML); --this used to work
}
req.send();
});
}```
添加 req.overrideMimeType("text/xml");似乎可以解决问题。顺便说一句,这个错误似乎只发生在 Chrome 中,Edge 没问题。没有在其他人身上测试过