HTML폼은 사용자와 웹사이트 또는 어플리케이션이 서로 상화 작용하는 기술 중 하나이다. 폼은 사용자가 웹사이트에 데이터를 전송하는 것을 허용하는 기술이다. HTML 폼은 하나 이상의 위젯으로 만들어지며 종류로는 텍스트 필드, 셀렉트 박스, 버튼, 체크박스, 라디오 등이 이에 해당한다.
이러한 폼은 일반적으로 데이터 전송을 위해 사용되나 사용자 경험 UX의 관점에서 폼이 많을수록 사용자들의 만족도가 줄어든다는 것을 기억해야한다.
<form action="/my-handling-form-page" method="post">
</form>
<form action="/my-handling-form-page" method="post">
<div>
<label for="name">Name:</label>
<input type="text" id="name" />
</div>
<div>
<label for="mail">E-mail:</label>
<input type="email" id="mail" />
</div>
<div>
<label for="msg">Message:</label>
<textarea id="msg"></textarea>
</div>
</form>
폼이 완성되었을 때 button 태그를 사용하여 데이터를 서버로 보낼 수 있따.
<form action="/my-handling-form-page" method="post">
<div>
<label for="name">Name:</label>
<input type="text" id="name" />
</div>
<div>
<label for="mail">E-mail:</label>
<input type="email" id="mail" />
</div>
<div>
<label for="msg">Message:</label>
<textarea id="msg"></textarea>
</div>
<div class="button">
<button type="submit">Send your message</button>
</div>
</form>
button 종류
데이터를 서버에 전송하기 위해 form 태그 그리고 위젯(input, textarea)를 사용하여 데이터를 받는다. 하지만 이 받은 데이터를 바로 서버로 보낼 수 없다. 서버에 보내기 전에 이게 서버가 원하는 데이터 인지 확인을 해야한다. 이것이 유효성 검사라고 볼 수 있다.
예
회원가입 시 아이디, 비밀번호 등 형식이 맞는지
비밀번호가 서버가 원하는 형식 특수문자, 영어, 대문자 등이 들어있는지