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 상태가 된다.
'Language(언어) > JavaScript' 카테고리의 다른 글
자바스크립트(JavaScript) 문자 -> 숫자/숫자 -> 문자 로 형변환 (0) | 2014.01.02 |
---|---|
자바스크립트(JavaScript) 체크박스 전체 선택 해제 및 색깔 변화 (0) | 2013.12.18 |
자바스크립트(JavaScript) Form.elements[] (0) | 2013.12.18 |
자바스크립트(JavaScript) 문자열 함수 (0) | 2013.12.10 |
자바스크립트(JavaScript) javascript, setAttribute IE7, IE8~ 구분 적용 (0) | 2013.12.10 |
댓글