这是一个新的版本,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请求的右括号之后被“关闭” …(希望这是合理的)。
else
有没有其他人以前有IE的类似问题?我还有许多其他错误要修复,因此,如果有任何答复,我会尽快回发。提前致谢。
编辑:仅供参考,我目前正在本地运行,这将成为内部托管的Web应用程序的一部分。
这是因为IE不支持“`”(模板字符串):http : //caniuse.com/#search=string
https://developer.mozilla.org/zh- CN/docs/Web/JavaScript/Reference/Template_literals
为避免此错误,您可以使用ES6到ES5的转译器,也可以直接编写有效的ES5 javascript:
代替
字符串文本$ {expression}字符串文本
写
“字符串文本” +表达式+“字符串文本”