html js中name和id的区别和使用分析

JavaScript09

html js中name和id的区别和使用分析,第1张

js中web页面元素的调用可以有两种识别方法:id和name

自己在用的过程中总结一下id和name的使用区别。

一,使用范围

除 BASE, HEAD, HTML, META, SCRIPT, STYLE, TITLE 标签外,id 都可用.

name只用于APPLET,SELECT,FORM,FRAME,IFRAME,IMG,A,INPUT,OBJECT,MAP,PARAM,META. (name有时有自己的用途)

name 用于 form 内元素,提交需要

id 用于 form 外元素好用因为 DOM 能直接取得单一元素

document.getElementByIdx_xx_x_x(“id_Number”) 得到的是单个元素

document.getElementsByName(“name”) 得到的是数组

getElementsByName是根据标签的name属性来拿的

getElementsByTagName是根据标签名来拿

getElementsByName()

这个是通过NAME来获得元素,但不知大家注意没有,这个是GET ELEMENTS,复数ELEMENTS代表获得的不是一个元素,为什么呢?

因为DOCUMENT中每一个元素的ID是唯一的,但NAME却可以重复。打个比喻就像人的身份证号是唯一的(理论上,虽然现实中有重复),但名字

重复的却很多。如果一个文档中有两个以上的标签NAME相同,那么getElementsByName()就可以取得这些元素组成一个数组。

比如有两个DIV:

<div name="docname" id="docid1"></div>

<div name="docname" id="docid2"></div>

那么可以用getElementsByName("docname")获得这两个DIV,用getElementsByName("docname")[0]访问第一个DIV,用getElementsByName

getElementsByTagName()

这个呢就是通过TAGNAME(标签名称)来获得元素,一个DOCUMENT中当然会有相同的标签,所以这个方法也是取得一个数组。

下面这个例子有两个DIV,可以用getElementsByTagName("div")来访问它们,用getElementsByTagName("div")[0]访问第一个DIV,用

getElementsByTagName("div")[1]访问第二个DIV。