2021. 7. 16. 18:25ㆍWeb
후 할때마다 이녀석들 때문에 속에서 천불이 난다.
공부하지 않을걸 어떻게 자바랑 비슷하게 생겼다고 어찌어찌 쓰는거니까 내 업이긴 한데..!
그래서 오늘은 id와 name이 무엇인가부터 getElementById()와 getElementByName()의 차이를 정리하려한다.
name, id
공통점
name과 id 가 매번 헷갈리는 이유다. 둘 모두 html의 element 식별자다.
대부분 언어들에서는 식별자 역할을 하는 것들이 하나니까 나처럼 야매로 하는 사람을 늘 이부분에서 대충 넘어가게된다.(지옥의 시작)
차이점
id : document 내에서 오로지 하나
name: 중복가능
getElementById()와 getElementByName()
name과 id의 차이를 알고보니 검색하기도 전에 두 함수의 차이를 대강 느꼈다.
getElementById()는 호출하는 대상이 유일하고, getElementByName()는 호출 대상이 여러개다.
name은 중복 가능한 개체니까.
실제로 getElementByName()는 배열을 반환한다.
여기까지 알면 모든게 해결된다고 생각하겠지만 문제는 여기서 터진다.
대체 왜 getElementById()는 호출이 안되냐 이거다. 이놈은 아에 터진다.
시간은 없고 마음은 급하고 그렇다면getElementByName()이라도 써보자하고 시도해도 잘 안된다.
일단은 왜 getElementByName()이 undefined를 반환했을까.
바로바로 배열을 반환하니까!
document.getElementsByName("concernAdd")[0].value
각 값에을 얻으려면 이렇게 인덱스를 이용해 접근해야했다.
(작성중)
'Web' 카테고리의 다른 글
[객체지향] object와 instance (0) | 2021.07.21 |
---|---|
[JAVA] System.out.printf()에서 %n (0) | 2021.07.20 |
[JAVA] 컴파일러와 인터프리터, 그리고 hotspot (0) | 2021.07.18 |
Java vs Python: 왜 데이터 가공에 파이썬을 쓰는가 (0) | 2021.07.17 |
equals()와 ==연산자 차이 (0) | 2021.07.14 |