差一点儿先生

导航

js中getElementById()用法

dom标准里面的 
获取当前文档中指定id的元素
if (document.getElementById("regjm").value != document.getElementById("regjm1").value ) {
   alert("提示:请输入有效的认证码");
   document.getElementById("regjm1").focus();
   return false;
   }
例如:
<script>
function get()
{
if(document.getElementById("Addr").value=="")
{
alert("null");
}
else
{
alert(document.getElementById("Addr").value);
}
}
</script>
<head>
<input type="text" id="Addr" value="">
<input type="button" value="click" onclick="get();">

 

 

顾明思义,get-Element-By-Id,就是通过ID来设置/返回HTML标签的属性及调用其事件与方法。用这个方法基本上可以控制页面所有标签,条件很简单就是给每个标签分配一个ID号

 

document.getElementById("link").href; 
document.getElementById("link").target; 
document.getElementById("img").src; 
document.getElementById("img").width; 
document.getElementById("img").height; 
document.getElementById("input").value; 
那么如何取得<div></div>以及<a></a>之间的值呢?如<div id="div">aaa</div>中的aaa,<a href="#" id="link">bbb</a>中的bbb,也很简单,利用innerHTML就可以了: 
document.getElementById("div").innerHTML; 
document.getElementById("link").innerHTML; 
getElementById 方法 
返回具有指定 ID 属性值的第一个对象的一个引用。 
语法 
oElement = document.getElementById(sIDValue) 
参数 
sIDValue 必选项。指明 ID 属性值的字符串 
返回值 
返回 ID 属性值与指定值相同的第一个对象。 
注释 
如果 ID 属于一个集合,getElementById 方法返回集合中的第一个对象。 
getElementById 方法与使用 all 集合上的 item 方法等同。例如,以下代码样本表示如何从 document 对象中取回 ID 为 oDiv 的第一个要素。 
使用 DHTML 对象模型: 
var oVDiv = document.body.all.item("oDiv"); 
使用文档对象模型(DOM): 
var oVDiv = document.getElementById("oDiv"); 
示例 
以下例子表示如何使用 getElementById 方法返回 ID 属性值 oDiv 的第一次出现。 
<script> 
function fnGetId(){ 
// Returns the first DIV element in the collection. 
var oVDiv=document.getElementById("oDiv1"); 
} 
</script> 
<DIV ID="oDiv1">Div #1</DIV> 
<DIV ID="oDiv2">Div #2</DIV> 
<DIV ID="oDiv3">Div #3</DIV> 
<INPUT TYPE="button" VALUE="Get Names" onclick="fnGetId()"> 
getElementById 方法 
返回具有指定 ID 属性值的第一个比如说有个网页中有个text框的id叫text1 
getElementById(text1)就能得到这个text1框的对象,并使用text框的所有属性和方法 
这个是JS的一个方法,意思是通过控件ID取得元素的值,如一个form里包函text、label等,他们都是FORM的元素,有一个分配的ID,getElementById()是取得这些元素的text值的。 
这个是JS的一个方法,意思是通过控件ID取得元素的值,如一个form里包函text、label等,他们都是FORM的元素,有一个分配的ID,getElementById()是取得这些元素的text值的。

 

程序举例

<html> 
<head> 
<script type="text/javascript"> 
function alignRow() 
{ 
var x=document.getElementById('myTable').rows 
x[0].align="right" 
} 
</script> 
</head> 
<body> 
<table width="60%" id="myTable" border="1"> 
<tr> 
<td>行1 单元格1</td> 
<td>行1 单元格2</td> 
</tr> 
<tr> 
<td>行2 单元格1</td> 
<td>行2 单元格2</td> 
</tr> 
<tr> 
<td>行3 单元格1</td> 
<td>行3 单元格2</td> 
</tr> 
</table> 
<form> 
<input type="button" onclick="alignRow()" value="右对齐第一行文字"> 
</form> 
</body> 
</html>
支队一个单元隔进行对齐

<html> 
<head> 
<script type="text/javascript"> 
function alignCell() 
{ 
var x=document.getElementById('myTable').rows[0].cells 
x[0].align="center" 
} 
</script> 
</head> 
<body> 
<table id="myTable" border="1" width="100%"> 
<tr> 
<td>单元格1</td> 
<td>单元格2</td> 
</tr> 
<tr> 
<td>单元格3</td> 
<td>单元格4</td> 
</tr> 
</table> 
<form> 
<input type="button" onclick="alignCell()" value="居中对齐第一个单元格的内容"> 
</form> 
</body> 
</html>
改变colspan的值

<html> 
<head> 
<script type="text/javascript"> 
function setColSpan() 
{ 
var x=document.getElementById('myTable').rows[0].cells 
x[0].colSpan="2" 
x[1].colSpan="6" 
} 
</script> 
</head> 
<body> 
<table id="myTable" border="1"> 
<tr> 
<td colspan="4">单元格1</td> 
<td colspan="4">单元格2</td> 
</tr> 
<tr> 
<td>单元格3</td> 
<td>单元格4</td> 
<td>单元格5</td> 
<td>单元格6</td> 
<td>单元格7</td> 
<td>单元格8</td> 
<td>单元格9</td> 
<td>单元格10</td> 
</tr> 
</table> 
<form> 
<input type="button" onclick="setColSpan()" value="改变colspan值"> 
</form> 
</body> 
</html> 


需要注意的:
 

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!

posted on 2013-05-12 17:42  差一点儿先生  阅读(8898)  评论(0编辑  收藏  举报