zhaoJian의 기술 노트

IT 강좌 HTML 기초 013_폼과 사용자 입력

학습 / HTML 기초 약 5275자 · 14분 소요 - 조회

HTML 폼(Form)은 HTML에서 매우 중요한 부분으로, 사용자가 웹페이지에서 정보를 입력하고 서버로 정보를 제출할 수 있게 해줍니다.

예제:

<form action="/submit" method="post">
<!-- 폼 요소가 여기에 들어갑니다 -->
</form>

<form> 요소는 사용자 입력 데이터의 영역을 정의하며, 텍스트 영역 <textarea>, 드롭다운 목록 <select>, 라디오 버튼 <radio>, 체크박스 <checkbox>, 버튼 <button> 등 다양한 유형의 입력 요소를 포함할 수 있습니다.

폼 속성:
  • action: 폼 데이터가 서버로 제출된 후 처리 파일의 URL을 정의합니다.
  • method: 데이터를 서버로 전송할 때 사용하는 HTTP 메서드를 정의하며, 일반적으로 “get”과 “post” 값을 사용합니다.
  • name: 폼의 이름을 지정하는 데 사용됩니다. 폼 이름은 폼을 식별하고 서버 측에서 폼 데이터를 처리할 때 사용됩니다.
  • enctype: 폼 데이터의 인코딩 방식을 지정하는 데 사용됩니다. 폼 데이터는 application/x-www-form-urlencoded 또는 multipart/form-data 인코딩 방식을 사용할 수 있습니다.
  • autocomplete: 폼의 자동 완성 기능을 활성화할지 여부를 지정하는 데 사용됩니다. on으로 설정하면 브라우저가 이전에 입력한 데이터로 폼을 자동으로 채웁니다.
  • novalidate: 폼 데이터를 검증할지 여부를 지정하는 데 사용됩니다. on으로 설정하면 폼 데이터가 제출되기 전에 검증되지 않습니다.

[!요약]

  • form 폼 자체는 보이지 않습니다.

텍스트 필드

폼에서 사용자가 문자, 숫자 등의 텍스트 내용을 입력해야 하는 경우가 자주 있습니다. 이는 <input> 요소를 통해 완료할 수 있으며, type 속성을 “text”로 설정합니다.

예제:

<form>
이름: <input type="text" name="name"><br>
나이: <input type="text" name="age">
</form>

효과:

예제 효과

[!요약]

  • 대부분의 브라우저에서 텍스트 필드의 기본 너비는 20자입니다.

비밀번호 필드

사용자가 비밀번호를 입력해야 하는 경우, <input> 요소의 type 속성을 “password”로 설정할 수 있으며, 입력된 내용은 숨겨집니다.

예제:

<form>
비밀번호: <input type="password" name="pwd">
</form>

효과:

예제 효과

[!요약]

  • 비밀번호 필드 문자는 평문으로 표시되지 않고 별표 * 또는 점 .으로 대체됩니다.

라디오 버튼(Radio Buttons)

라디오 버튼과 체크박스는 사용자가 여러 옵션 중 하나 또는 여러 개를 선택할 수 있게 해줍니다. 라디오 버튼의 type 속성 값은 “radio”입니다.

예제:

<form action="">
성별:
<input type="radio" name="sex" value="male" checked>남성
<input type="radio" name="sex" value="female">여성
</form>

효과:

예제 효과

[!요약]

  • 라디오 버튼의 name 속성 값은 동일해야 하며, 그렇지 않으면 같은 그룹에 속하지 않습니다.
  • checked 속성은 라디오 버튼의 기본 선택 여부를 지정하는 데 사용됩니다.

체크박스(Checkboxes)

체크박스는 하나 이상의 옵션을 선택할 수 있으며, **<input type="checkbox">**로 정의합니다.

예제:

<form>
사용해 본 앱:
<input type="checkbox" name="app" value="jd">JD
<input type="checkbox" name="app" value="wechat">WeChat
<input type="checkbox" name="app" value="qq">QQ
<input type="checkbox" name="app" value="douyin">Douyin
</form>

효과:

예제 효과

[!요약]

  • checked 속성은 체크박스의 기본 선택 여부를 지정하는 데 사용됩니다.

드롭다운 목록(select)

드롭다운 목록은 사용자가 여러 옵션 중 하나를 선택할 수 있게 해줍니다. <select> 요소로 생성되며, <option> 요소를 사용하여 옵션을 정의합니다.

예제:

<form action="">
국가를 선택하세요:
<select name="country">
<option value="china">중국</option>
<option value="us">미국</option>
<option value="japan">일본</option>
</select>
</form>

효과:

예제 효과

[!요약]

  • selected 속성은 드롭다운 목록의 기본 옵션을 지정하는 데 사용됩니다.
  • disabled 속성은 드롭다운 목록의 사용 가능 여부를 지정하는 데 사용됩니다.
  • size 속성을 사용하여 드롭다운 목록에서 표시되는 옵션 수를 지정할 수 있습니다.

제출 버튼(Submit, Reset, Button)

폼은 일반적으로 사용자의 입력을 제출하거나 확인하기 위한 버튼이 필요합니다. submit, reset, button은 모두 HTML의 폼 버튼 요소입니다.

유형속성기능사용 시나리오
submittype="submit"폼 데이터 제출로그인 폼 제출, 회원가입 폼 제출 등
resettype="reset"폼 데이터 초기화검색 폼 초기화, 장바구니 초기화 등
buttontype="button"없음일반적으로 JavaScript와 함께 사용하여 작업 실행, 페이지 이동 등
imagetype="image"이미지를 사용하여 버튼 표현작업 실행, 페이지 이동 등

예제:

<form action="/submit" method="post">
<input type="submit" value="제출 버튼">
<input type="reset" value="초기화 버튼">
<button type="button" value="확인 버튼">확인 버튼</button>
<input type="image" src="[zhaojian-avatar.png (1332×1332)](https://www.zhaojian.net/images/zhaojian-avatar.png)" alt="이미지 버튼" width="50" height="50">
</form>

효과:

예제 효과

[!요약]

  • post: HTTP POST 메서드를 의미하며, 폼 데이터가 폼 본문에 포함되어 서버로 전송됩니다. 사용자 이름 및 비밀번호와 같은 민감한 데이터를 제출하는 데 사용됩니다.
  • get: 기본값으로 HTTP GET 메서드를 의미하며, 폼 데이터가 action 속성의 URL에 추가되고 ?를 구분 기호로 사용합니다. 일반적으로 페이징과 같은 민감하지 않은 정보에 사용됩니다. 예: https://www.zhaojian.net/?page=1, 여기서 page=1은 get 메서드로 제출된 데이터입니다.

폼 요소 및 속성

요소
유형
설명속성
form폼의 컨테이너 요소입니다. 폼의 이름, 제출 방법 및 제출 주소를 지정합니다.name, action, method, enctype, accept-charset, target, autocomplete, novalidate
input입력폼에서 가장 일반적으로 사용되는 요소입니다. 텍스트, 숫자, 날짜 등 다양한 유형의 사용자 입력을 받을 수 있습니다.type, name, value, placeholder, disabled, readonly, autocomplete, required, pattern, min, max, step
textarea입력여러 줄의 사용자 입력을 받는 데 사용됩니다.name, cols, rows
select선택사용자 선택을 받는 데 사용되며, 여러 옵션을 포함할 수 있습니다.name, multiple, size
option선택select 요소에 사용되며, 선택 가능한 옵션을 정의합니다.value, selected
radio선택단일 선택 사용자 입력을 받는 데 사용됩니다. 여러 라디오 버튼을 포함할 수 있습니다.name, value, checked
checkbox선택다중 선택 사용자 입력을 받는 데 사용됩니다. 여러 체크박스를 포함할 수 있습니다.name, value, checked
submit버튼폼을 제출하는 데 사용됩니다.value
reset버튼폼을 초기화하는 데 사용됩니다.value
button버튼버튼을 생성하는 데 사용됩니다. 폼 제출, 폼 초기화 또는 기타 작업을 수행하는 데 사용할 수 있습니다.type, name, value
label레이블입력 요소에 레이블을 제공하는 데 사용됩니다. 레이블은 사용자가 입력 요소의 용도를 이해하는 데 도움이 됩니다.for
fieldset그룹폼 요소를 그룹화하는 데 사용됩니다.name, legend
legend제목fieldset 요소에 제목을 제공하는 데 사용됩니다.
optgroup그룹옵션을 그룹화하는 데 사용됩니다.label
공유:

댓글