Language/└HTML, CSS

[HTML/CSS] form, input 태그의 다양한 타입 요소 | Yoon's Dev

Yooniron 2021. 4. 17. 21:02

form, input 태그의 다양한 타입 요소

 

 


form 요소

 

웹 페이지에서는 form태그를 사용하여 사용자로부터 입력을 받을 수 있다.

또한, 사용자가 입력한 데이터를 서버로 보낼 때 form 요소를 사용한다.

 

form 태그는 다음과 같은 문법으로 사용한다.

1
<form action="처리 할 페이지주소" method="get|post"></form>
cs

 

action="" 은 입력받은 데이터를 처리할 스크립트 파일의 주소를 명시한다.

이것을 form-handler라고 한다.

method=""는 입력받은 데이터를 서버에 전달할 방식이다.

 

 

method의 속성은 다음과 같다

속성 설명
get 주소에 데이터를 추가하여 전달하는 방식, 데이터가 주소 창에 그대로 나타나고 데이터의 크기가 제한적
post 데이터를 별도로 첨부하여 전달, 데이터가 외부에 드러나지않으며 데이터의 크기가 제한이 없음, 보안성 뛰어남

 


다양한 타입의 input 요소

 

HTML에서 사용할 수 있는 대표적인 input 요소의 타입들이 있다.

 

  • 텍스트 입력 (text, textarea)
  • 비밀번호 입력 (password)
  • 라디오 버튼 (radio)
  • 체크 박스 (checkbox)
  • 파일 선택 (file)
  • 선택 입력 (select)
  • 버튼 (button)
  • 전송 (submit)
  • 필드셋 (fieldset)

<input> 태그는 다음과 같이 사용한다.

1
<input type="타입" name="파라미터 이름">
cs

 

 

1. 텍스트 입력(text, textarea)

 

<input> 태그의 type 속성 값을 "text"로 설정하면, 한 줄의 텍스트를 입력받을 수 있다.

 

1
2
3
4
5
6
7
<form action="">
 
   텍스트를 입력하세요 :
 
    <input type="text" name="search">
 
</form>
cs

tpye="text"

 

<input> 태그의 type 속성 값을 "textarea"로 설정하면 문장을 입력받을 수 있다.

 

1
2
3
4
5
6
7
<form action="">
 
    문장을 입력하세요 :
 
    <input type="textarea" name="search">
 
</form>
cs

 

type="textarea"

 

2. 비밀번호 입력 (password)

 

<input> 태그의 type 속성 값을 "password"로 설정하면 비밀번호를 입력 받을 수 있다.

입력받은 문자는 별표나 작은 원으로 표시된다.

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<!DOCTYPE html>
<html>
<head>
    <title></title>
</head>
<body>
 
<form action="">
 
      비밀번호 : 
      <input type="password" name="password">
</form>
 
</body>
</html>
cs

type="password"

 

3. 라디오 버튼 (radio)

 

<input> 태그의 type 속성 값을 "radio"로 설정하면, 여러 개의 라디오 버튼 옵션 중에서 단 하나만의 값을 받을 수 있다.

※ 반드시 모든 input 요소의 name 속성이 같아야 한다.

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<!DOCTYPE html>
<html>
<head>
    <title></title>
</head>
<body>
 
<form action="">
 
    <input type="radio" name="language" value="html" checked> HTML <br>
 
    <input type="radio" name="language" value="css"> CSS <br>
 
    <input type="radio" name="language" value="java"> JAVA <br>
 
    <input type="radio" name="language" value="cpp"> C
</form>
 
</body>
</html>
cs
type="radio"

 

4. 체크 박스 (checkbox)

 

<input> 태그의 type 속성 값을 "checkbox"로 설정하면, 사용자로부터 여러 개의 체크박스 중에서 여러 개의 옵션 값을 받을 수 있다.

※ 반드시 모든 input 요소의 name 속성이 같아야 한다.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<!DOCTYPE html>
<html>
<head>
    <title></title>
</head>
<body>
 
<form action="">
 
    <input type="checkbox" name="language" value="html" checked> HTML <br>
 
    <input type="checkbox" name="language" value="css"> CSS <br>
 
    <input type="checkbox" name="language" value="java"> JAVA <br>
 
    <input type="checkbox" name="language" value="cpp"> C
</form>
 
</body>
</html>
cs

 

type="checkbox"

 

4. 파일 선택 (file)

 

<input> 태그의 type 속성 값을 "file"로 설정하면, 사용자로부터 파일을 받을 수 있다.

 

accept 속성을 이용하여 입력받을 수 있는 파일의 확장자 및 종류를 명시할 수 있다.

1
2
3
4
5
6
7
8
9
10
11
12
13
<!DOCTYPE html>
<html>
<head>
    <title></title>
</head>
<body>
 
<form action="">
    <input type="file" name="upload_file" accept="image/*">
</form>
 
</body>
</html>
cs
type="file"

 

5. 선택 입력 (select)

 

<input> 태그의 type 속성 값을 "select"로 설정하면, 여러 개의 드롭다운 리스트(drop-down-list) 중에서 한 개의 옵션을 입력받을 수 있다.

<option>은 드롭다운 리스트(drop-down-list)에서의 각각의 옵션을 명시한다.

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
<!DOCTYPE html>
<html>
<head>
    <title></title>
</head>
<body>
 
<form action="">
    <select name="language">
 
        <option value="java"> JAVA
 
        <option value="css" selected> CSS
 
        <option value="html"> HTML
 
        <option value="c"> C
 
</select>
</form>
 
</body>
</html>
cs

type="select"

 

6. 버튼 (button)

 

<input> 태그의 type 속성 값을 "button"로 설정하면, 버튼을 나타낸다.

onclick="" 사용자가 클릭했을 때 작업을 나타낸다.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<!DOCTYPE html>
<html>
<head>
    <title></title>
</head>
<body>
 
<form action="">
    <button type="button" onclick="alert('클릭하셨습니다.')">
 
    버튼
 
</button>
</form>
 
</body>
</html>
cs

type="button"

 

6. 전송 (submit)

 

<input> 태그의 type 속성 값을 "submit"으로 설정하면, 입력받은 데이터(data)를 폼 핸들러로 제출하는 버튼을 생성한다.

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<!DOCTYPE html>
<html>
<head>
    <title></title>
</head>
<body>
 
<form action="">
    이름을 입력하세요: <br>
 
    <input type="text" name="name" value="">
    <input type="submit" value="전송">
</form>
 
</body>
</html>
cs
type="submit"

 

7. 필드셋 (fieldset)

 

<input> 태그의 type 속성 값을 "fieldset"으로 설정하면, form 요소와 관련된 데이터를 하나로 묶어준다.

<legend>는 fieldset 안에서만 사용 가능하며, fieldset 요소의 제목을 나타낸다.

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
<!DOCTYPE html>
<html>
<head>
    <title></title>
</head>
<body>
 
<form action="">
    <fieldset>
 
        <legend>학생 정보</legend>
 
        이름 : <br>
 
        <input type="text" name="name"><br>
 
        이메일 : <br>
 
        <input type="text" name="email"><br><br>
 
        학번 : <br>
 
        <input type="text" name="studentNum"><br><br>
     
 
    </fieldset>
 
</body>
</html>
cs

 

type="fieldset"