window.onerror不起作用

时间:2009-12-16 16:23:09

标签: javascript ajax error-handling

我在表单上有一些棘手的AJAX代码,有时它会失败(不要问为什么,我无法解决它)。当发生这种情况时,我需要捕获错误,重置隐藏的字段指示符,并自然地提交表单,以便用户没有不愉快的经历。我计划使用window.onerror来做这件事,但它永远不会被解雇!我使用IE8,我不得不担心的是IE浏览器。是否有一些问题让这个事件发挥作用?这是我的代码......

window.onerror = function() {
  alert("Error!");
  document.getElementById("hidAjax").value = "0";
  document.forms[0].submit();
}

3 个答案:

答案 0 :(得分:12)

“当许多开发人员因为他们为Internet Explorer启用了脚本调试而未调用他们的onerror处理程序时,会遇到一个常见的问题。如果您安装了Microsoft Script Debugger或Microsoft VisualStudio6.0®,则会出现这种情况。 (特别是Visual InterDev 6.0™) - 错误处理是这些产品启动调试器的方式。您可以在“Internet选项”对话框的“高级”选项卡上禁用给定Internet Explorer实例的脚本调试(请注意,选中“禁用脚本调试”设置将仅适用于该Internet Explorer实例):“

http://msdn.microsoft.com/en-us/library/ms976144.aspx

答案 1 :(得分:2)

try / catch还引入了一个只有catch范围的附加错误对象。在性能很重要的应用中,这不是一个好主意。

答案 2 :(得分:0)

有什么理由不把try / catch放在棘手的代码周围?