您的位置:首页 > Web前端 > JavaScript

Javascript获取Html界面元素的几种方法

2012-11-15 15:42 651 查看
在Javascript,可以通过多种方式获取Html元素对象。以下是一个Html页面示例。

<body>

<form name="form1" method="POST" action="">
<p><input type="text" name="age" id="age" size="10" valu="18" /></p>
<p><input type="submit" value="提交" name="B1" /></p>
<p><a href="javascript:click();">Click</a></p>
</form>

</body>


如果我们需要在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")

我们在具体使用时,需要特别注意:all和getElementsByName方法,在界面上没有指定元素时,仍可能会得到object对象。经过分析和验证,主要有以下注意事项:

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。

转自:http://blog.csdn.net/kadwf123/article/details/7821327
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: