我有一个Rails应用程序,当我有Javascript错误时,它们没有显示在Firebug控制台中。我选择了“显示javascript错误”和“显示javascript警告”。
当我在基本的html文件中插入javascript错误时,错误会按预期显示。
在Rails应用程序的javascript中,它仅在极少数情况下显示错误。 例如,我可以插入废话,如:
dfghaefb;
并且Firebug中没有显示错误。但是如果我在那里插入一个空格,Firebug会显示错误:
dfgh aefb;
有什么想法吗?这让我疯了。
更新 Pumbaa80是对的,它是语法与运行时。
所以我设置了错误:
onerror=errorHandler;
var error="";
function errorHandler(errMessage,url,line){
error="There is an error at this page.\n";
error+="Error: " + errMessage+ "\n";
error+="URL: " + url + "\n";
error+="Line: " + line + "\n\n";
error+="Click OK to continue viewing this page,\n";
alert(error);
return true;
}
And I have a method with an error:
function initForm() {
asdfs;
}
当我在方法之外调用它时它会起作用:
initForm();
但不是在这种情况下:
document.observe('dom:loaded', function() {
initForm();
});
为什么?
答案 0 :(得分:0)
您是否让页面完全加载?我现在有一个rails应用程序在我面前运行,并且使用了firebug,我进入了dfghaefb;是的,它确实会引发错误!
ReferenceError: dfghaefb is not defined { message="dfghaefb is not defined", more...}
运行Firefox 3.6.3,Firebug 1.5.3和MacOSX 10.5.6:)
答案 1 :(得分:0)
答案 2 :(得分:0)
我有同样的,它没有显示任何东西,它让我疯狂多年,即使我在选择的控制台选项卡中显示“显示javascript错误”,它似乎在我做“启用所有”后开始工作板”。
答案 3 :(得分:0)
dfghaefb;
产生运行时错误。可以通过在onerror
上放置window
处理程序或以某种方式将它们捕获到try/catch
来抑制这些错误。在这种情况下,Firebug不会显示任何内容。
相比之下,
dfgh aefb;
是语法错误,无论try/catch
和onerror
如何,都会显示在错误控制台中。
答案 4 :(得分:-2)
如果没有测试用例,这些问题就无法解决。