찾다
웹 프론트엔드HTML 튜토리얼input_HTML/Xhtml_Web 페이지 제작 시 id와 name 속성의 차이점에 대한 소개 예

오랫동안 웹사이트를 구축해 왔지만 입력 시 이름과 ID의 차이를 아직도 파악하지 못하고 최근에 jquery를 배우다가 또 이런 문제가 발생해서 온라인으로 정보를 수집했습니다. 이 글을 보고 나중에 활용하기 위해 정리했습니다.

웹 개발을 해본 거의 모든 사람들이 요소의 ID와 이름의 차이점이 무엇인지 물어봤다고 할 수 있습니다. ID가 있는데 왜 이름이 필요한가요?! 그리고 가장 고전적인 대답도 얻을 수 있습니다. ID는 사람의 ID 번호와 같고 이름은 ID와 같으며 이름은 반복 가능합니다.

지난 주에도 ID와 이름 문제가 발생했습니다. 페이지에 입력 유형="hidden"을 입력하고 ID='SliceInfo'만 작성하고 값을 할당한 후 요청을 제출하고 사용하세요. Params["SliceInfo"]는 값을 가져올 수 없습니다. 나중에 갑자기 Name으로 표시해야 한다는 것을 깨달았기 때문에 입력에 Name='SliceInfo'를 추가했는데 모든 것이 정상이었습니다.

첫 번째 문단의 ID와 Name에 대한 답변은 너무 일반적입니다. 물론 클라이언트측 HTML 요소의 ID인 ID에 대한 설명은 완전히 맞습니다. Name은 실제로 훨씬 더 복잡합니다. Name은 용도가 다양하고 ID로 완전히 대체할 수 없으므로 취소됩니다. 구체적인 용도는 다음과 같습니다.

사용 1: 입력, 선택, 텍스트 영역 및 버튼과 같이 서버와 상호 작용할 수 있는 HTML 요소의 서버 측 표시기로 사용됩니다. 서버 측 이름을 기반으로 Request.Params를 통해 요소가 제출한 값을 얻을 수 있습니다.
사용 2: HTML 요소 입력 유형='라디오' 그룹화, 라디오 버튼 컨트롤이 동일한 그룹화 클래스에 있고 확인 작업이 뮤텍스이며 동시에 하나의 라디오만 선택할 수 있다는 것을 알고 있습니다. 이 그룹화는 동일한 Name 속성을 기반으로 구현되었습니다.
사용 3: 페이지에 앵커 포인트를 설정합니다. 링크 대신 < ;a name="PageBottom">과 같이 페이지 앵커를 얻습니다.
사용 4: Applet, Object, Embed 및 기타 요소와 같은 객체로서의 ID입니다. 예를 들어 Applet 객체 인스턴스에서는 이름을 사용하여 객체를 참조합니다.
목적 5: IMG 요소와 MAP 요소를 연관시킬 때 IMG의 핫스팟 영역을 정의하려면 해당 속성인 usemap을 사용해야 하므로 usemap="#name"(연관된 MAP 요소의 이름) ).
사용 6: 속성, 메타, 매개변수 등 특정 특정 요소의 속성. 예를 들어, 객체에 대해 또는 메타에서

분명히 이러한 용도는 단순히 ID로 대체할 수 없으므로 HTML 요소의 ID와 이름의 차이는 ID 번호와 이름의 차이가 아닙니다.

물론 HTML 요소의 Name 속성은 페이지에서 ID 역할을 할 수도 있습니다. 왜냐하면 DHTML 개체 트리에서는 document.getElementsByName을 사용하여 지정된 모든 Name을 포함하는 개체 배열을 얻을 수 있기 때문입니다. 페이지의 요소. Name 속성에는 또 다른 문제가 있습니다. Name 속성을 포함할 수 있는 요소를 동적으로 생성할 때 단순히 name 속성을 추가하기 위해 element.name = "..."을 사용할 수는 없습니다. 요소를 생성하면 '') 요소에 Name 속성이 추가됩니다. 이것은 무엇을 의미합니까? 이해하려면 아래 예를 살펴보십시오.

코드 복사
코드는 다음과 같습니다.

var input = document.createElement('INPUT');
input.id = 'myId';
input.name = 'myName';
alert(input.outerHTML) ;


메시지 상자에 표시되는 결과는 입니다.

코드 복사
코드는 다음과 같습니다.

var input = document.createElement('');
input.id = 'myId';
alert(input.outerHTML);
< ; /스크립트>

메시지 상자에 표시되는 결과는 입니다.
Name 속성을 초기화하는 디자인은 MSDN에서 이렇게 해야 한다고 해서 IE의 결함은 아니지만, 이 디자인의 원리는 무엇인가요? 나는 아직 명확하게 생각하지 않았습니다.

그런데 페이지에 동일한 ID를 가진 n(n>1) 개의 HTML 요소가 있다면 어떻게 될까요? DHTML 개체에서 이를 참조하는 방법은 무엇입니까? ASPX 페이지를 사용하는 경우 aspnet 프로세스는 aspx 페이지를 처리할 때 고유하지 않은 ID를 허용하지 않기 때문에 이러한 상황이 발생하기 쉽지 않습니다. 이는 페이지에서 예외가 발생하고 정상적으로 렌더링될 수 없음을 의미합니다. 동적 페이지가 아니고 ID를 반복해야 한다면 IE는 어떻게 해야 할까요? 현재로서는 document.getElementById를 사용하여 객체를 얻을 수 있지만, ID가 중복된 객체 중 HTML Render 중에 나타나는 첫 번째 객체만 얻을 수 있습니다. 이때, 반복되는 ID는 참조 시 자동으로 배열이 되며, 반복되는 ID를 가진 요소들은 Render 순으로 배열에 존재하게 됩니다.

양식 요소(양식 입력 텍스트 영역 선택)와 프레임 요소(iframe 프레임)라는 이름이 지정됩니다.
이러한 요소는 양식 제출과 관련이 있습니다(프레임 요소는 양식의 수신 페이지에서 작동함).
이름이 있는 요소만 받습니다. ID가 지정된 요소는 양식을 통해 값을 받을 수 없습니다.
예외가 있습니다. A는 앵커 또는 ID로 이름을 지정할 수 있습니다. >
물론 위 요소에도 ID 값을 할당할 수 있습니다. ID 값을 할당할 때 해당 요소를 참조하는 방법이 변경됩니다.
이름 지정: document.formName.inputName document.frames("frameName")
ID 할당: document.getElementById("inputID") document.all.frameID

ID만 할당 가능, 이름 할당 불가: (양식 관련 요소 제외, ID만 할당 가능)
body li table tr td th p divspan pre dl dt dd 글꼴 b 등
성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
此 Apple ID 尚未在 iTunes Store 中使用:修复此 Apple ID 尚未在 iTunes Store 中使用:修复Jun 10, 2024 pm 05:42 PM

使用AppleID登录iTunesStore时,可能会在屏幕上抛出此错误提示“此AppleID尚未在iTunesStore中使用”。没有什么可担心的错误提示,您可以按照这些解决方案集进行修复。修复1–更改送货地址此提示出现在iTunesStore中的主要原因是您的AppleID个人资料中没有正确的地址。步骤1–首先,打开iPhone上的iPhone设置。步骤2–AppleID应位于所有其他设置的顶部。所以,打开它。步骤3–在那里,打开“付款和运输”选项。步骤4–使用面容ID验证您的访问权限。步骤

修复事件ID 55,50,98,140磁盘错误在事件查看器修复事件ID 55,50,98,140磁盘错误在事件查看器Mar 19, 2024 am 09:43 AM

若您在Windows11/10的事件查看器中发现事件ID55、50、140或98,或遇到磁盘文件系统结构损坏且无法使用的错误,请按照以下指南解决此问题。什么是事件55,磁盘上的文件系统结构损坏和不可用的意思?第55届会议,Ntfs磁盘上的文件系统结构损坏且无法使用。请在卷上运行chkMSK实用程序当NTFS无法将数据写入事务日志时,会触发事件ID55的错误,这将导致NTFS无法完成无法写入事务数据的操作。这种错误通常发生在文件系统损坏的情况下,可能是由于磁盘上存在坏扇区或文件系统对磁盘子系统的不

阿里巴巴id在哪里看阿里巴巴id在哪里看Mar 08, 2024 pm 09:49 PM

在阿里巴巴软件中,一旦您成功注册一个账号,系统就会为您分配一个独特的ID,这个ID将作为您在平台上的身份标识。但是对于许多用户来说,他们会想要查询自己的ID,但是却不知道该如何操作。那么本站小编带来下文中,就将为大家带来详细的攻略步骤介绍,希望能帮助到大家!阿里巴巴id在哪里看答案:【阿里巴巴】-【我的】。1、首先打开阿里巴巴软件,进入到首页中后我们需要点击右下角的【我的】;2、然后来到我的页面中后我们在页面的上方就可以看到【id】了;阿里巴巴id和淘宝一样吗阿里巴巴id和淘宝id不一样,但是二

事件 ID 4660:已删除对象 [修复]事件 ID 4660:已删除对象 [修复]Jul 03, 2023 am 08:13 AM

我们的一些读者遇到了事件ID4660。他们通常不确定该怎么做,所以我们在本指南中解释。删除对象时通常会记录事件ID4660,因此我们还将探索一些实用的方法在您的计算机上修复它。什么是事件ID4660?事件ID4660与活动目录中的对象相关,将由以下任一因素触发:对象删除–每当从ActiveDirectory中删除对象时,都会记录事件ID为4660的安全事件。手动更改–当用户或管理员手动更改对象的权限时,可能会生成事件ID4660。更改权限设置、修改访问级别或添加或删除人员或组时,可能会发生这种情

腾讯视频id在哪里查看腾讯视频id在哪里查看Feb 24, 2024 pm 06:25 PM

腾讯视频id在哪里查看?腾讯视频APP中是有专属的id,但是多数的用户不知道如何查看腾讯视频id,接下来就是小编为用户带来的腾讯视频id查看方法图文教程,感兴趣的用户快来一起看看吧!腾讯视频使用教程腾讯视频id在哪里查看1、首先打开腾讯视频APP,主页面右下角【个人中心】进入到专区;2、之后进入到个人中心页面,选择【设置】功能;3、然后在设置页面,点击最下方【退出账号】;4、最后在下图所示的页面即可查看到专属的id号。

vue3怎么封装input组件和统一表单数据vue3怎么封装input组件和统一表单数据May 12, 2023 pm 03:58 PM

准备工作用vuecreateexample创建项目,参数大概如下:用原生input原生的input,主要是value和change,数据在change的时候需要同步。App.tsx如下:import{ref}from&#39;vue&#39;;exportdefault{setup(){//username就是数据constusername=ref(&#39;张三&#39;);//输入框变化的时候,同步数据constonInput=;return()=>({

laravel input隐藏域怎么实现laravel input隐藏域怎么实现Dec 12, 2022 am 10:07 AM

laravel input隐藏域的实现方法:1、找到并打开Blade模板文件;2、在Blade模板中使用method_field方法来创建隐藏域,其创建语法是“{{ method_field('DELETE') }}”。

如何在Linux中查找父进程ID (PPID)如何在Linux中查找父进程ID (PPID)Mar 09, 2024 am 08:01 AM

在Linux操作系统中,每个运行的程序都是一个进程,每个进程都有一个唯一的进程标识符(PID)。同样的,每个进程都会有一个父进程,也就是创建它的进程,父进程的标识符被称为父进程ID(PPID)。在这篇文章中,我们将探讨如何在Linux系统中查找父进程的ID,并介绍一些有效的命令和工具,以帮助您获取有关进程之间关系的详细信息。查找父进程ID的基本命令首先,我将向大家简要介绍几个基本命令,这些命令可用于查看系统中运行的所有进程及其父进程ID。使用ps命令查看进程信息ps命令是一个强大的工具,它用于报

See all articles

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

뜨거운 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

Dreamweaver Mac版

Dreamweaver Mac版

시각적 웹 개발 도구

PhpStorm 맥 버전

PhpStorm 맥 버전

최신(2018.2.1) 전문 PHP 통합 개발 도구

ZendStudio 13.5.1 맥

ZendStudio 13.5.1 맥

강력한 PHP 통합 개발 환경

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.