input box가 form 내부의 입력 을 받는 컴포넌트이므로 엔터키를 누를 경우 form을 서버에 전송하려고 한다. 그런데 form에 action 속성값이 있으면 해당 action을 수행하지만 action 속성값이 없다면 자기자신(페이지)을 다시 불러와서 리프레쉬된다. |
원인이 위와 같다면 해결책은 간단합니다.
엔터키가 들어왔을 경우 실행해야할 함수 뒤에 return false;를
추가하여 더 이상의 작업을 막는 것이죠.
소스를 다음과 같이 수정하여 해결하였습니다.
<input type="text" id="test" name="test" size=15 maxlength="14" style="ime-mode:disabled"onKeyPress="if(event.keyCode==13){ onSearch(); return false; }">
댓글 없음:
댓글 쓰기