ie下完全正常
FF下异常
代码如下:
<table class="table_class" cellpadding="0" border="0" cellspacing="1" width="100%" id='detail'>
  <tr><td colspan="4"><span id='czrkAddr'>${addr[2] }</span><td></tr>
</table>
<div><span id='czrkAddr2'></span></div><Script>alert(document.getElementById("czrkAddr"));//(1)
alert(document.getElementById("czrkAddr2"));//(2)</script>//外部JS内
alert(document.getElementById("czrkAddr"));//(3)
alert(document.getElementById("czrkAddr2"));//(4)(1)(2)均有值,(3)无值(4)有值. why呢?(以上代码仅为演示代码,结构同项目代码)
求大大指教..

解决方案 »

  1.   

    1,2 是否是写在那两个span下面?
      

  2.   

    在我这 1、2alert出来object对象 3、4为null FireFox4.0
      

  3.   

    外部js引用是放在内部js下面吗?如果是的话 4个都alert出object对象
      

  4.   

    inetfuture
    你知道什么原因吗? 有何解决办法使得外部JS 能获取到 span的ID 
      

  5.   

    确保你要操作的元素加载完毕,js代码才执行……否则元素没加载进去 当然取不到
    一般就是把js现在元素后面 或是写到 window.onload事件中
      

  6.   

    把相关的js文件引用或代码都放在</body>标签后 这是最保险也是最合理的方法
      

  7.   

    外部JS 的alert方法是测试代码 在输入查询条件 点击查询按钮之后(页面肯定完成了)才执行的,原代码是获取这个span的innerHTML
      

  8.   


    <head>
    <script type="text/javascript" src="../js/tools.js"></script>
    <script type="text/javascript">
    window.onload=function() {
    tableTrColor("table6");//为外部文件的js函数
    }
    </script>
    </head>
    <body>
    <table id="table6">...............
    我也遇到这个问题,现在解决了注: