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


    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

  • 相关阅读:
    ffmpeg基本用法
    MySQL中使用like查找汉字 Incorrect string value 解决办法
    mysql存储过程变量的拼接
    解决IIS8中 URLRewriter 不能使用的方法
    Unix系统介绍
    远程控制客户端界面介绍
    远程控制之登录界面设计
    搞了一周,终于把视频流在局域网内传输搞定
    servelet
    前后台贯穿
  • 原文地址:https://www.cnblogs.com/dirgo/p/5001138.html
Copyright © 2020-2023  润新知