IE11抛出“SCRIPT1014:无效字符”,其他所有浏览器都可以使用

这是一个新的,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之前遇到过类似的问题? 我还有其他一些错误需要修复,所以如果有任何回复,我会尽快回复。 提前致谢。

编辑:仅供参考我目前在本地运行,并将成为内部托管的Web应用程序的一部分。

这是因为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”