问一个问题:document.getElementById()可以取得页面听指定id的元素么?假设我这个元素外面套了许多别的元素,还能取到么?求解。
(我记得有次是不行,必须结合,document.getElementsByTagName,但是我今天却试不出来了)

解决方案 »

  1.   

    你套元素可以的啊 只是元素不同的ID就可以的,同一个页面中ID是唯一的,还有就是要是嵌套页面的话 就取不到值了
      

  2.   

    document.getElementById() 肯定可以拿到指定的id对象的,当然id是唯一的。document.getElementsByTagName取到的是一个数组,是相同name的值的数组。name可以相同,比如checkbox,但是id不能相同
      

  3.   

    嵌套?有哪种形式
    iframe,frameset,还有什么?
      

  4.   

    document.getElementsByName("aa")[i]
    或document.getElementsByName("aa").item(i)
    多个相同的ID找其中一个
      

  5.   

    <div id="parent">
     <div id="child1"></div>
     <div id="child2"></div>
     <div id="child3"></div>
    </div>
     
    var o=document.getElementById("parent");那么o指的是第一个DIV对象,同时包含了三个DIV。
    还可以通过o.getElementsByTagName("div")来得到这三个DIV的集合。
      

  6.   

    附上一个简化版的小函数: /**
     * author:develop_design_level
     * date: 2009-11-02
     * @param {Object} id
     */
    function $(id){
    if(document.getElementById){
    return document.getElementById(id);
    }else{
    return document.all.id;
    }
    }
    ====== 说明:可以取到你页面里面所有带有ID的DOM节点(也就是楼主你说的元素),无论外面包含了多少html元素(iframe这个标签除外,它有自己的方法取到它内部的内容)。但是要求页面里面的ID是唯一的。
    === 结贴,给分 ===
    得到满意的答案,立即结贴给分,是一种良好的习惯和美德