回答
删除使用src-attribute导入脚本的javascript声明。如果您真的需要它,请将您的javascript文件更改为内嵌JavaScript。
来源:http://bytes.com/topic/javascript/answers/750333-ie-syntax-error-80020101-undefined-array
最简单的方法将是一个参数添加到您的AJAX请求,例如AJAX = 1和隐藏的JavaScript声明时AJAX -parameter存在是请求。
我不认为这与使用jsp包含文件有关:include,因为浏览器不知道除了HTML之外的其他合成。
您是否有机会收录js文件?
因为
错误80020101意味着IE isnt't能够编译脚本。
您还可以,如果你正在做的jQuery从AJAX调用得到这个错误,你传递一个额外的逗号的数组的结尾,就像这样:
$.post('http://example.com/example1/',{
field1:sField1,
field2:sField2,
field3:sField3,
field4:sField4,
field5:sField5,
},function(sData){
if (console) { console.log(sData); }
});
见sField5之后逗号?这是语法错误。没有其他浏览器会关心,但IE。 IE会抛出晦涩的80020101错误(这意味着“无法评估你的Javascript - 你有一个语法错误”),如果你使用jQuery,它会被追查下去,因为调试器只会指向评估线在jQuery中。 IE调试器对你来说毫无用处,这要归功于微软。下一次你遇到80020101错误,我的建议是:
- 寻找任何AJAX调用并寻找额外的逗号。
- 寻找任何数组(如花括号中的东西),最后有一个额外的逗号。
- 如果这仍然没有帮助,那么看看你使用
<!--
和//-->
来标记你的Javascript的技巧。这直到1.7.2才成为jQuery的一个已知问题,它仍然是jQuery团队的一个存档错误。 - 移至最新版本的jQuery。
- 开始逐个删除脚本块中的东西,并慢慢添加项目,直到找到有问题的代码段。
我现在碰到了jQuery(甚至是最新版本)这个问题两次。唯一的解决方案是将全部的javascript复制并粘贴到一个大文件并通过JSLint(jsfiddle.net,首选)运行。它能够指出我能够修复的几个小错误(包括额外的逗号),然后将其重新复制并粘贴回原来的位置以消除此问题。
在我来说,我发现,在我的JS代码作为HTML注释:
<script type="text/javascript">
<!-- Unexpected Comment -->
//code...
</script>
我/* */
取代<!-- -->
和它的工作。 希望它能帮助别人。
我有同样的错误,但在我的情况下有一个保留字'class'
。 这里的代码片段,以明确这一点:
function foo(ajaxResponse){
$(elem).attr('class', ajaxResponse.class);
}
我改写了这个为:
$(elem).attr('class', ajaxResponse['class']);
希望这是有帮助的。
在使用jquery时出现此错误的另一个问题。
更改 $(document).ready(function(){}); TO $(window).load(function(){});
想分享我的经验。在我的情况下,它与JavaScript无关。这是因为这条线在同事的HTML使用角度的:
<img data-ng-model="previewImage" src="" data-ng-src="{{imageURL}}" alt="" ></img>
我记得有一个空的src通常是一件坏事。我填充了src字段,错误消失了。
我在使用jQuery 1.10.2时遇到了这个错误,并且正在加载一个不存在的文件。
因此,请确保您尝试加载的文件是正确的,否则IE8可能会抛出80020101错误。
我的问题的形成原因是:
var a = b = c = true;
转向
var a = true;
var b = true;
var c = true;
现在它工作正常!
再见 MA
我就遇到了这个问题,IE浏览器的错误消息不是非常有帮助。所以,我在Mozilla Firefox中访问了我的网站,并且Firefox能够精确确定出现问题的确切代码行。不是一个高科技的修复,但如果你一直只使用IE来调试这个问题,尝试加载您的站点在FF(与Firebug扩展安装)并检查控制台输出。
我也遇到了这个问题,但在我的脚本文件采取仔细看后,我发现我做了其他浏览器顺利运行,但IE浏览器捡起来,并告诉我错误的一个小错误:
我以前的代码为:
var autocomplete = new google.maps.places.Autocomplete(searchTextField ,options);
分析后,我得到了searchTextField
是ID,我必须在使用前得到其数值
所以我将其更改为:
var input = document.getElementById('searchTextField');
var autocomplete = new google.maps.places.Autocomplete(input,options);
它工作正常。
这真的很酷,IE浏览器检测到它,但微软可以提高浏览器来显示具体原因具体的错误,因为这是非常令人沮丧,如果相同的代码在其他浏览器
我已经错过了把“变种”的作品变量声明的前面,把它解决了问题。
<script>
uploadDocument = "Some message";
</script>
我它固定到:
var uploadDocument = "Some message";
根本原因是,我不得不在具有相同id“uploadDocument”形式的元件,因此,上面的声明是造成HTML是畸形
在我的情况下,问题是在阿贾克斯POST额外无用昏迷误差函数的末尾:
$.ajax({
type: 'POST',
dataType: 'text',
url: '../Client/GetName',
data: { ClientId: id},
success: function (respone) {
alert(respone);
},
error: function (xhr, ajaxOptions, thrownError) {
alert(xhr.statusText);
}, //<- look here, this guy complicated my simple programmer life
});
删除后,它一切正常。
- 1. 错误错误阿贾克斯问题80020101从请求
- 2. 问题AJAX请求
- 3. Ajax请求问题
- 4. Ajax请求错误
- 5. 错误Ajax请求
- 6. 四处错误:错误80020101
- 7. AJAX请求太长/错误请求
- 8. Ajax https请求问题
- 9. Codeigniter Ajax请求URL问题
- 10. Ajax + servlet GET请求问题
- 11. tomcat的Ajax请求问题
- 12. Ajax请求Phonegap问题
- 13. Ajax请求404错误
- 14. jQuery AJAX请求错误
- 15. POST请求ajax jquery错误
- 16. ajax请求中的错误
- 17. yii2 Ajax请求错误404
- 18. Jquery Ajax API错误:400错误请求
- 19. POST请求错误,Flask-Restless问题
- 20. C#HttpListener“错误的请求”问题
- 21. 请求媒体类型[application/json]错误!请求正文不是Extjs Ajax请求的JSON格式问题
- 22. Azure AD OAuth2访问令牌请求错误 - 400错误请求
- 23. IPhone应用程序ajax请求问题
- 24. 远程ajax请求中的问题
- 25. Ajax请求下的ZendX DatePicker问题
- 26. Ajax请求303响应CORS问题
- 27. Ajax POST请求问题Flask Restless
- 28. 与Firefox的AJAX请求的问题
- 29. Extjs两个Ajax请求阻止问题
- 30. ajax请求问题(科尔多瓦)
这是合理的,但是,我们使用的js文件是一个很大的文件,我们无法复制它的一部分。在这个之前,jsp文件被重复使用了很多次,但不是这样。 – Ali 2011-02-07 11:28:13
您是否考虑在做AJAX时隐藏声明? – heikkim 2011-02-08 07:08:54
从带有src属性的脚本标记切换到内嵌JavaScript是*不合理。 – DCShannon 2015-12-09 01:07:20