이번에 로그인페이지를 만들면서 입력받는곳이 한군데만 있는데
엔터를 누르면 Submit이 되는거 같더군요.
1. 제가 사용한 소스
<form name="actFrm" id="actFrm">
<input type="text" name="userID" id="userID" /><br />
<input type="button" value="CHECK!" onClick="return goCheck();" />
</form>
2. 다른 소스-1
<form name="actFrm" id="actFrm">
<input type="text" name="userID" id="userID" />
<input type="text" name="userPWD" id="userPWD" /><br />
<input type="submit" value="CHECK!" onClick="return goCheck();" />
</form>
3. 다른 소스-2
<form name="actFrm" id="actFrm">
<input type="text" name="userID" id="userID" />
<input type="text" name="userPWD" id="userPWD" /><br />
<input type="button" value="CHECK!" onClick="return goCheck();" />
</form>
1번은 엔터 클릭시 아무 반응이 없어야 하는데 반응이 생기고
2번은 type="submit"이니까 엔터클릭시 goCheck() 함수를 실행
3번은 type="button"이니까 엔터클릭시 아무 반응이 없음.
type="text"가 1개있을때 엔터를 누르면 반응이 생기는게 이상해서
인터넷 검색을 해보니 Outsider's Dev Story 에 관련 내용이 잘 설명되어있네요.
해결 방법은 두가지가 있습니다
1. 스크립트를 통해서 엔터클릭을 막는 방법
2. html 만으로 제어하는 방법
저는 html만으로 제어하는게 심플해서 2번방법을 사용하고 있습니다
<input type="text" style="display:none;" />
위처럼 type="text"를 1개더 만들면 그런 현상이 없어지네요. 후훗~
'WEB TIP > HTML-CSS' 카테고리의 다른 글
File 컨트롤 이미지 교체 (0) | 2011.12.20 |
---|---|
Offline Applicatioin Cache (0) | 2011.01.06 |
폰트색상 (0) | 2010.08.05 |
폼검사기 (0) | 2006.04.05 |