我有一堆网页,我有一个相同的结构:
<html>
<head>
<script src="sorttable.js"></script>
<noscript>
<meta http-equiv="refresh" content="60">
</noscript>
<script type="text/javascript">
<!--
var sURL = unescape(window.location.pathname);
function doLoad()
{
setTimeout( "parent.frames['header_frame'].document.submitform.submit()", 60*1000 );
}
function refresh()
{
window.location.href = sURL;
}
//-->
</script>
<script type="text/javascript">
<!--
function refresh()
{
window.location.replace( sURL );
}
//-->
</script>
<script type="text/javascript">
<!--
function refresh()
{
window.location.reload( true );
}
//-->
</script>
</head>
<body>
.
.
.
<script type="text/javascript">
window.onload = function() { sorttable.innerSortFunction.apply(document.getElementById("OpenFace-2"), []); doLoad(); }
</script>
</body>
</html>
这在每个页面中都可以完美地工作,除了一个页面,当onload函数运行时,它无法找到可排序的代码(它是从顶部的sorttable.js加载的)。所有这些页面都是同一个应用程序的一部分,并且与js文件一起放在同一个目录中。我没有得到任何错误在apache日志或js控制台,直到页面加载,当我得到:
sorttable.innerSortFunction is undefined
我看不出这一页有什么不同。有没有人能看出这里有什么问题,或者给我一些关于如何进一步调试的提示?
我粘贴的代码来自它不起作用的页面的源代码,但它与它起作用的页面是相同的。
看起来在该页上,您尝试排序的id为OpenPhace-2
的表没有需要的类:sortable
只有存在sortable
类的表时,sorttable
对象的innerSortFunction
函数才会出现