如何解决错误:IE中“undefined为null或不是对象,即在ext js中”?

时间:2011-05-24 10:40:21

标签: javascript extjs

我认为它是尾随逗号或语法错误的原因,变量在没有声明的情况下使用。我的js fiel是1000行代码。由于错误没有证明我没有行。调试变得很麻烦。请帮我搞IE的调试技巧。该脚本适用于Firefox,Safari。

7 个答案:

答案 0 :(得分:5)

jslint该文件。这将找到问题以及您可能拥有的任何其他问题。

您可以将其作为command line utility via node运行。

答案 1 :(得分:4)

包含此<script type="text/javascript" src="https://getfirebug.com/firebug-lite-debug.js"></script><html debug="true">将为您提供一个firebug控制台 http://getfirebug.com/firebuglite#Debug

答案 2 :(得分:1)

要在IE中进行调试,我建议您安装DebugBar。此扩展程序类似于FireBug for Firefox。

答案 3 :(得分:1)

如果您是通过 Microsoft Visual Studio 进行开发的,我记得它会通过突出显示带有绿色卷曲下划线的以下}元素来帮助您找到尾随逗号。

如果您在 IE8 及更高版本中使用内置开发人员工具,则可以在浏览器中单步执行代码并确定导致错误的行 - 从顶部。

如果你没有在 IE 中使用任何调试工具,那么我会建议你 - 就像 Johan bjornd 一样。

快乐狩猎:)

答案 4 :(得分:0)

如果你正在使用eclipse:

为java脚本配置spket插件编辑器

它将突出显示缺失/不完整的语法(例如逗号/分号)

所以你不需要调试语法错误

答案 5 :(得分:0)

伙计们,我终于做到了吗?我充分利用了你所有的技术。

1)我把代码放在一个单独的代码中 尝试{ 码 }  和赶上(e){     警报('最终错误:'+ e.description); }

并保留最初的200行未注释,其余的注释并运行文件

while(EOF) {
  if(got an alert of error)
    checked for trailing commas & putting missed semicolons till end.
  else
     adding some more lines later uncommented out of the commented and ran the file.
}
  

最后,页面成功加载!!!

答案 6 :(得分:0)

我使用Extjs RowExpander用户扩展时出现此问题。该问题仅发生在IE中。我能够通过在'toggleRow'方法的顶部添加几行代码来修复它:

if (!this.view) {
    this.bindView();
}

出于某种原因,IE偶尔会对'this.view'的引用感到窒息(可能是时间问题)。运行'bindview()'可确保'this.view'正确解析。