码迷,mamicode.com
首页 > Web开发 > 详细

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

时间:2015-11-27 19:41:02      阅读:123      评论:0      收藏:0      [点我收藏+]

标签:

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”) 得到的是数组
注:元素的获取方式

取得 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 定义参数。

二,唯一性区别
有些标签,可以同时有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).属性

http://hi.baidu.com/liu19871112/item/5dfba65df584ac3832e0a922

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

标签:

原文地址:http://www.cnblogs.com/dirgo/p/5001138.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!