.JavaScript getElementById(" ")详解

    技术2022-05-20  52

    1.document.getElementById(" ") 得到的是一个对象,用alert显示得到的是一个“object”,而不是具体的值,它有value和length属性,加上".value"得到的才是具体的值!

      A.语法:

         oElement = document . getElementById ( "sID" ) ;

          参数:其中sID: 必选项,类型为字符串 (String) 。 返回值:oElement :对象 (Element) 。

          说明:

          根据指定的 id 属性值得到对象。返回 id 属性值等于 sID 的第一个对象的引用。假如对应的为一组对象       ,则返回该组对象中的第一个。如果无符合条件的对象,则返回 null 。

      B.例子:

         text1:    <input name="textName1" type="text" id="textName2" />     <br>     text2:    <input name="textName2" type="text" id="textName1" />    <br>     <input type="button" name="Submit" value="text1"  οnclick=alert(document.getElementById('textName2').value) />    <input type="button" name="Submit2" value="text2"  οnclick=alert(document.getElementById('textName1').value) />

        在第一个文本框中输入1,在第二个文本框中输入2,然后点下面的两个按钮,猜一下结果是什么?

        我本意是按钮1返回第一个文本框的值,按钮2返回个文本框的值。结果是两个按钮都返回了第一个文本框的值。C.注意:

        说明ie执行document.getElementById(elementName)的时候,并不是按照ID来查找的。在IE中getElementById 先找name。

        在fireFox中不存在这样的问题,fireFox执行document.getElementById(elementName)的时候只查找id等于elementName的对象,如果不存在则返回null。

    可能IE是考虑的兼容性的问题才这么做的。

    focus

    使得元素得到焦点并执行由 onfocus 事件指定的代码。

    getElementById

    获取对 ID 标签属性为指定值的第一个对象的引用。

    getElementsByName

    根据 NAME 标签属性的值获取对象的集合。

    getElementsByTagName

    获取基于指定元素名称的对象集合。       

         

    document.getElementById方法简写(js技巧)

    prototype.js里提倡的一个方法就是使用$()简写,通过以下的函数,你可以用$('id')来实现document.getElementById('id') 这个功能。

    function $()        {           var elements = new Array();           for (var i = 0; i < arguments.length; i++) {              var element = arguments[i];              if (typeof element == 'string')              element = document.getElementById(element);             if (arguments.length == 1)             return element;            elements.push(element);            }          return elements;       }

    如果你想它提交一个带多个id的数组后,他也会向你返回多个元素的Array!


    最新回复(0)