이런 함수를 본적이 있을 것이다.
<a href="#" onclick="aaa(); return false;">Click</a>
onclick 안의 문장은 기본적으로 자바스크립트이다.
그런데 자바스크립트 뒤에 return false를 붙히는 이유는 무엇일까?
return false를 붙히면 기존에 있던 기능들이 없어진다.
<a > 함수를 클릭하면 원래는 href 로 이동하는 액션이 취해진다.
그렇지만 onclick 이벤트 핸들러를 걸어주면 onclick 을 먼저 쓰게 되고
href 로 이동하게 된다.
그렇지만 여기서 return false를 붙혀 준다면 원래 가지고 있는 기본 속성은 무시하게 된다.
즉 a 함수의 기본 속성인 링크의 기능이 수행 되지 않는다.
만약 이동할 것인지를 묻는 함수가 나온다면 다음과 같은 코드를 짜면 된다.
<a href="http://www.naver.com" onclick="return confirm('Are you sure you want to do that?');">Click Me</a>
또한 return 은 exit의 기능도 가지고 있다.
다음과 같은 코드를 짠다면
return 의 의미가 확실해 질것이다.
if(name=='') form.nm.focus(); return;
form.submit();
form.submit();
이름이 없으면 포커스를 맞춰주고 아니면 submit을 하는 간단한 소스코드이다.
여기서 return 이 없으면 어떻게 될까?
name=='' 일 지라도 포커스 실행 후 다시 아래로 내려가 form 을 실행하게 된다.
따라서 우리가 원하던 기능이 나오지 않는다.
이렇든 return 은 값을 반환한다는 의미로 쓰이지만 exit의 의미로도 자주 쓰인다
'프로그래밍 > HTML' 카테고리의 다른 글
ie 호환성 보기 강제 추가 및 변경 (0) | 2013.11.05 |
---|---|
input text에서 최초 글 입력시 한글로 전환되게 하는 (윈도우 언어로 변경하는?) (0) | 2013.11.05 |
동영상 object / embed 태그를 이용한 동영상 삽입 (0) | 2013.08.20 |
enctype="multipart/form-data" get, post, multipart, 데이터 전송방식 (0) | 2012.08.23 |
html style border 주기 (0) | 2012.08.23 |