我试图生成一个页面,其中显示的基本数据可以用不同的方式解释。所以我有一个数据格式和几个不同的JS脚本来从数据中生成HTML。每个脚本都包含一个名为BuildView
的函数,用于输入数据,解析数据并使用document.write
输出HTML。服务器端脚本将适当的视图插入正确的数据和脚本包含到页面中。很简单,对吧?当我说“步入”时,为什么Firebug不会进入我的脚本?
除了在页面上没有显示任何东西。所以我决定尝试使用Firebug进行调试。下面是页面的基本结构:
<!DOCTYPE blah blah blah>
<html>
<head>blah blah blah</head>
<body>
<script type="text/javascript" src="/view.js"></script>
<div id='main-page'>
<h1 align="center">TITLE</h1>
<p align="left"><strong>Data: </strong>
<div id="data-view">
<script type="text/javascript">
BuildView('data from server');
</script>
</div>
</p>
</div>
</body></html>
什么也不显示了data-view
DIV中。我加载了Firebug,切换到脚本标签,在拨打BuildView
的地方放了一个断点,并重新加载了页面。它停在断点处,我点击F11(Step Into),希望找到自己在BuildView
脚本中查看并查看发生了什么。相反......我一无所获。它只是跨过它并完成了页面的渲染。没有错误报告,但没有发生实际情况。
如果你不能说,我以前没有用过Firebug。我错过了什么?如何让脚本调试器实际调试到此脚本中?
您是否尝试过BuildView内的断点?你也应该试试google chrome的调试器。另外,为什么使用'document.write'?通过让BuildView设置innerHTML的“#data-view”,让它变得不那么突兀,那么你可以动态地改变内容... – 2012-04-04 16:48:58
我建议尝试一个更简单,静态的测试页与JavaScript,然后当它工作有服务器动态地包含它。如果静态页面不起作用,请在jsfiddle中与我们分享。 – AlexMA 2012-04-04 16:57:42
@Juan:我不能在BuildView中放置一个断点,因为它没有出现在Firebug中。它位于外部文件中,无论出于何种原因,这不会显示在脚本选项卡中。 – 2012-04-04 17:04:21