진이의 Developer Story

form submit 버그(?) 본문

Script/JavaScript

form submit 버그(?)

JIN3260 2016. 1. 25. 15:57

희한하게 폼안에 <input type="text" /> 가 하나만 존재할 경우 엔터키로 submit 되는 장면을 목격했습니다.
어떠한 자바스크립트도 들어가지 않은 상황인데, 도대체 엔터키로 submit이 되는걸까요?

구글링을 통해 검색을 여러번 해보았지만, 해결방법만 제시됐을 뿐 그 이유에 대해서는 어떠한 것도 적혀있지 않았습니다.
이유를 아시는 분은 댓글에 꼭 좀 적어주시길 바라며, 해결방법은 2가지입니다.

(1) 보이지 않는 <input type="text" style="display: none;" /> 를 추가하기.
아래와 같이 input 태그를 하나를 더 삽입하면 더 이상 엔터키에 submit 되지 않습니다.
단 type을 hidden으로 줄 경우에는 submit이 작동하니, type을 text로 주시고 display 스타일 값을 이용해야 합니다.

<input type="text" style="display: none;" />

(2) form 태그 내에 onsubmit="return false;" 옵션주기.

<form onsubmit="return false;">
</form>

혹은 위의 방법처럼 onsubmit에 return false 값을 주어서 작동하지 않게 합니다.
그럼 어떻게 submit을 하냐구요?
-> 자바스크립트나 jQuery를 이용하여 submit을 호출할 경우 작동합니다!

'Script > JavaScript' 카테고리의 다른 글

JqGrid 많이 쓰이는 함수  (0) 2016.03.30
Comments