我有一堆网页,我有一个相同的结构:
<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代码(从sorttable.js加载到顶部)。所有这些页面都是同一个应用程序的一部分,并且与js文件一起位于同一个目录中。我在apache日志或js控制台中没有出现任何错误,直到该页面加载,当我得到:
sorttable.innerSortFunction is undefined
我看不出是什么让这个页面与众不同。任何人都可以看到这里有什么问题,或者给我一些关于如何进一步调试的指示?
我粘贴的代码来自页面的源代码,它不起作用,但它与它工作的页面完全相同。
答案 0 :(得分:1)
在该页面上,您尝试排序的ID为OpenPhace-2
的表格似乎没有必要的类:sortable
innerSortFunction
对象的函数sorttable
仅在存在sortable
类的表时才会出现。