.JavaScript getElementById(" ")详解

来源:互联网 发布:短信链接打开淘宝app 编辑:程序博客网 时间:2024/05/01 06:09

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"  onclick=alert(document.getElementById('textName2').value) />
    <input type="button" name="Submit2" value="text2"  onclick=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!