글
(javascript) getElementById()/getElementsbyName() 함수가 제대로 동작하지 않을 때
IT/Programming/Solution/Tip
2013. 6. 8. 08:39
getElementById() 와 getElementsByName() 은 DOM 접근을 위해 애용받는 함수다.
getElementById() :: http://www.w3schools.com/jsref/met_doc_getelementbyid.asp
getElementsByName() :: http://www.w3schools.com/jsref/met_doc_getelementsbyname.asp
이 두 함수를 사용해야할 때 주의할 점이 있는데, DOM 객체 접근을 위한 함수이다보니 HTML 이 로딩될 때 DOM 객체가 모두 로딩되기 전에 Javascript 단에서 DOM 객체 접근을 시도하면 값을 얻어오지 못하는 경우가 생긴다. 이런 경우 두 함수는 null 값을 반환한다. 제대로 작동하지 않는 것 같으면 리턴 값을 alert() 나 document.write() 등으로 확인해보자.
window.onload() 함수를 사용하여 HTML 이 완전히 로딩이 되고 나서 DOM 객체에 접근해야한다.
예제는 아래와 같다.
var email; var phone; var password; var interest; window.onload = function() { email = document.getElementById("email"); phone = document.getElementById("phone"); password = document.getElementsByName("password"); interest = document.getElementsByName("interest"); }
'IT/Programming > Solution/Tip' 카테고리의 다른 글
_IO_str_overflow_internal 에러 발생 시 (0) | 2013.07.03 |
---|---|
iconv 에서 다이렉션 기호 사용 시 주의해야할 점 (0) | 2013.06.27 |
Uncaught TypeError: Object #<HTMLDocument> has no method 'getElementByName' (1) | 2013.06.08 |
error LNK2019: _DumpRegs@0 외부 기호(참조 위치: _main@0 함수)에서 확인하지 못했습니다. (0) | 2013.05.30 |
pthread.h 를 포함했는데도 undefined reference to `pthread_create' 에러가 날때 (0) | 2013.04.05 |