본문 바로가기
Language(언어)/JavaScript

자바스크립트(JavaScript) getElementById(), getElementsByName() 이란?

by 대학교닷컴 2013. 12. 18.


getElementById(), getElementsByName() 이란?

 

getElementById()의 경우는 오브젝트의 id속성을 통해 인식하고

getElementsByName()의 경우는 오브젝트의 name을 통해 인식한다.

 

FF에서는 위의 룰에 따라 식별하며 IE는 알아서 식별해준다.

FF의 경우 getElementById()을 사용시 textarea에 id="myTextArea"가 없는 경우 또는

getElementsByName()을 사용시 textarea에 name="myTextArea"가 없는 경우 에러가 발생한다.

 

그리고 둘의 차이는 단수냐 복수냐 즉 단일 오브젝트냐 복수의 오브젝트(배열지정)냐로 구분할수 있다.

위의 예제처럼 2개의 동일한 id name의 텍스트 필드가 있을경우

getElementById()로 지정할경우 <texarea id="myTextArea" name="myTextArea">text1</textarea> 밖에 핸들링할수 없다.

물론 배열로 지정할경우 에러가 발생할 것이다.(FF)

getElementsByName()로 지정할경우 texarea 둘다 핸들링 가능하다. 물론 배열로 지정하지 않고

objTextarea.value를 사용하면 undefined 상태가 된다.

댓글