在Javascript,可以通过多种方式获取Html元素对象。以下是一个Html页面示例。
如果我们需要在javascript中获取输入框age对象。主要的方法有以下几种:
- all方法:document.all("age")
- getElementById方法:document.getElementByIdx_x("age")
- getElementsByName方法:document.getElementsByName("age")
- getElementsByTagName方法:document.getElementsByTagName_r("input")
- form1方法:document.form1.age
- eval方法:eval_r("document.form1.age")
- W3标准下可以通过getElementById、getElementsByName、getElementsByTagName、form1访问Document中的任一个标签。
- all:建议尽量不要采用all方法来获取元素, 这种方法不符合W3标准,而且只能在IE或IE内核的浏览器中有效。当界面中没有指定元素时,all方法有时返回null,有的情况下返回object。
- getElementById:通过ID来取得Document中的某一特定元素,所以只能访问设置了ID的元素。如果界面中存在多个相同ID的元素,则只取第1个。
- getElementsByName:通过Name来获得元素数组,文档中只有一个指定Name的标签时,也返回数组。Document中每一个元素的ID是唯一的,但Name却可以重复。打个比喻就像人的身份证号是唯一的,但名字重复的却很多。
- getElementsByTagName:通过TagName(标签名称)来获得元素,一个Document中当然会有相同的标签,所以这个方法也是取得一个数组。
- form1:如果文档中只有一个指定Name的标签时,返回该对象;如果文档中有多个指定Name的标签时,返回对象数组。
- eval:eval是计算某个字符串,并执行其中的javascript。