这是一个新问题,IE11 会在适用于所有其他浏览器的代码上抛出错误。
无论如何,经过几个小时的“修复”代码以确保 IE11 不会自行崩溃后,我遇到了一个错误,我似乎无法找到解决方案。这是有问题的代码:
$('input[name="messageAccount"]').change(function () {
$aButton.show();
var addedIds = $("#hdnfield").val();
if (addedIds == null || addedIds === "") {
$("#hdnfield").val(this.value);
} else {
$("#hdnfield").val(`${addedIds}${this.value}`);
};
});
它嵌套在 Ajax 请求的成功调用内部。 IE 的调试器说错误来自 else
语句的内容,但它也错误地读取了所有括号。例如,此函数的左括号在 Ajax 请求的右括号之后被“关闭”...(希望这是有意义的)。
以前有没有其他人遇到过类似的 IE 问题?我还有许多其他错误需要修复,所以如果有任何回复,我会尽快回复。提前致谢。
编辑:仅供引用,我目前正在本地运行它,它是将成为内部托管网络应用程序的一部分。
最佳答案
这是因为 IE 不支持“`”(模板字符串):http://caniuse.com/#search=string
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Template_literals
参见 https://stackoverflow.com/a/27678299/2195875
要避免此错误,您可以使用 ES6 到 ES5 的转换器,或者直接编写有效的 ES5 javascript:
代替
`string text ${expression} string text`
写
"string text "+expression+" string text"
关于javascript - IE11 在所有其他浏览器工作的地方抛出 "SCRIPT1014: invalid character",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43048455/