我有一个带有手风琴和一些 javascript 的网站。在 Firefox 中一切正常,但在 IE11 中出现错误
SCRIPT1003:应为“:”
我将其范围缩小到 .js 文件中的这段代码:
var nmArray = new Array();
function saveplayers() {
var x;
for (x=0;x<32;x++) {
var y = "i"+eval(x+1);
nmArray[x]=document.getElementById(y).value;
}
var request = $.ajax({
type: "POST",
url: "savep.php",
data: ({ nmArray }),
cache: false
});
}
该错误抱怨 nmArray 之后应该有一个冒号({ nmAray })
如果我去掉这个功能,我的网站就会再次运行。为了调试,我剥离了 HTML,我什至没有调用这个函数。我刚刚包含了 .js 文件。
语法({nmArray})
在支持 ES6 的浏览器中是一个快捷方式{nmArray: nmArray}
。 IE11 不支持此功能(基于您收到的错误),因此您必须将其重写为:
data: ({ nmArray: nmArray }),
请参阅此处的示例:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Object_initializer#New_notations_in_ECMAScript_6 https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Object_initializer#New_notations_in_ECMAScript_6
请注意,在这种情况下,您可以省略包装()
data: { nmArray: nmArray },
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)