对于有 ID 且这个 ID 不重复的对象都可以取到。

解决方案 »

  1.   

    不可能取不到,除非你页面还没有加载完,就执行这脚本
    document.getElementById("table name or id")
      

  2.   

    我检查过了,肯定没有重名
    我的js是要实现这样的功能,一共有2个div(divA和divB),每个div下包含一个table,然后根据一个不同的input跳出不同的div,并且table里的内容是动态生成的.
    现在的问题是如果第一次弹出的是divA,那么divB里的table就取不到
    如果第一次弹出的是divB,那么divA里的table就取不到
    哪位给点提示,快发疯了
      

  3.   

    是不是框架页面呀
    用document.all.getElementById试试
      

  4.   

    你是不是在弹出 divA 的时候把 divB 从网页里给“冲”掉了?若这样当然取不到了,因为它已经不存在于该网页中了
      

  5.   

    楼上说的冲调什么意思?我又试了试,好像只有在Maxthon下有这问题,在IE下,FireFox,Avant Browser下都没问题代码如下
    function show_2nd_layer()
    {
      var i,j,index_num;
      hide_all_layers()
      
        var secondtable=document.getElementById(SecondTableID);
        if(secondtable==null){return;}
        var num=0;
        index_num=find_city(document.getElementById(arInputId[0]).value);
        
        if(index_num>=0 && city[index_num].length>1)
        {
            for(i=1;i<secondtable.rows.length; i++)
            {
                for (j=0;j<secondtable.rows[i].cells.length; j++) 
                {
                    num=num+1;
                    if(num<city[index_num].length)
                    {   
                        secondtable.rows[i].cells[j].innerHTML = '<nobr>&nbsp&nbsp<a onclick=select_second_input("'+city[index_num][num]+'") style="cursor:hand;">'+city[index_num][num]+'</a>&nbsp&nbsp</nobr>';            
                    }
                    else
                    {
                        secondtable.rows[i].cells[j].innerText = "    ";
                    }
                }
            }
            var input_obj=document.getElementById(arInputId[1]);
            var x=posX(input_obj);
            var y=posY(input_obj)+input_obj.clientHeight+5;
           
            show_layer(arDivID[1],x,y);
        } 
      
    }