JS中的id和name之间的区别和使用分析

在开发工程中遇到了id和name的基础概念问题,但是作为傻白甜的我却不是很理解他们之间的区别和联系。

JS中web页面元素的调用可以有两种识别方法:id和name,特地总结一下:

1. 使用范围

出BASE,HEAD,HTML,META,SCRIPT,STYLE,TITLE标签外,id都可用。

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

name 用于 form 内元素,提交需要
id 用于 form 外元素好用因为 DOM 能直接取得单一元素
document.getElementByIdx_xx_x_x(“id_Number”) 得到的是单个元素
document.getElementsByName(“name”) 得到的是数组

注:元素的获取方式

取得 id :document.getElementByIdx_xx_x_x(“idname”)

取得 name : document.getElementsByName(“name”)[0?1?2?3?....]
表单元素 (form input textarea select) 与框架元素 (iframe frame) 用 name

这些元素都与表单 ( 框架元素作用于 form 的 target) 提交有关 , 在表单的接收页面只

接收有 name 的元素 , 赋 ID 的元素通过表单是接收不到值的
Name 其实要复杂的多,因为 Name 有很多种的用途,所以它并不能完全由 ID 来代替,从而将其取消掉。

  具体用途有:

  用途 1: 作为可与服务器交互数据的 HTML 元素的服务器端的标示,比如 input 、 select 、 textarea 、和 button 等。我们可以在服务器端根据其 Name 通过 Request.Params 取得元素提交的值。

  用途 2: HTML 元素 Input type=’radio’ 分组,我们知道 radio button 控件在同一个分组类, check 操作是 mutex 的,同一时间只能选中一个 radio ,这个分组就是根据相同的 Name 属性来实现的。

  用途 3: 建立页面中的锚点,我们知道 link 是获得一个页面超级链接,如果不用 href 属性,而改用 Name ,如: ,我们就获得了一个页面锚点。

  用途 4: 作为对象的 Identity ,如 Applet 、 Object 、 Embed 等元素。比如在 Applet 对象实例中,我们将使用其 Name 来引用该对象。

  用途 5: 在 IMG 元素和 MAP 元素之间关联的时候,如果要定义 IMG 的热点区域,需要使用其属性 usemap ,使 usemap=”#name”( 被关联的 MAP 元素的 Name) 。

  用途 6: 某些特定元素的属性,如 attribute ,和 param 。例如为 Object 定义参数。

2. 唯一性区别
有些标签,可以同时有name和id.
id 就像身分证号,是唯一的, name 就像姓名一样可以同名
在一个HTML网页中,id是唯一的,即只有某一个标签,或某一个块的标识符是这个id.
而当有多个name时,系统自动使同name归为数组

  赋 name: document.formName.inputName    document.frames(“frameName”) 

  赋 ID  : document.all.inputID           document.all.frameID

在通用的情况下:
NAME.属性
document.NAME.属性
document.getElementsByName(‘NAME’)
ID.属性
document.ID.属性
document.getElementByIdx_xx_x_x(‘ID).属性

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值