π·οΈ νΌ(Form) νκ·Έ μμ & μ’ λ₯ - νλ°© μ 리
νΌ(Form) μμ
HTML μμ λΈλΌμ°μ μ λ΄μ₯ μμλ₯Ό μ¬μ©νμ¬ μΉ μμμ λν μ§μμ μ 곡νλ€. μλ₯Όλ€μ΄ μ°λ¦¬κ° νΉμ μ¬μ΄νΈμ λ‘κ·ΈμΈ ν λ μλμ κ°μ΄ κ³μ μμ΄λμ λΉλ°λ²νΈλ₯Ό μ λ ₯νλ νλ©΄μ μλ μμ΄ λ§μ΄ λ΄€μ κ²μ΄λ€.
μ΄μ²λΌ ν μ€νΈ νλ, μνΈ νλ, νμΈλ, λΌλμ€ λ²νΌ, μ μΆ λ²νΌ, λ©λ΄ λ±κ³Ό κ°μ 컨νΈλ‘€μ ν¬ν¨ν μμ ν΅, μλ²λ‘ λμ μμ΄λ, λΉλ°λ²νΈλ₯Ό μ λ ₯ν΄μ λ³΄λ΄ μλ²μ λ°μ΄ν°λ² μ΄μ€μ λ΄ μ λ³΄κ° μκ³ , μ΄κ²μ΄ μΌμΉνλ©΄ λ‘κ·ΈμΈμ΄ μ²λ¦¬λκ² λλ€.
κΌ νμκ°μ / λ‘κ·ΈμΈ λΏλ§ μλλΌ μ΄λ κ² μ£Όλ¬Έμ νκΈ° μν΄ λ°°μ‘μ§ μ 보λ₯Ό κΈ°μ¬νκ³ μ μΆνλ κ²λ λ§μ°¬κ°μ§μ΄λ€.
μ΄λ κ² μΉνμ΄μ§μμ λ΄ μ 보λ₯Ό μλ²λ‘ 보λ΄κ±°λ νΉμ μλ²λ‘ 보λ΄μ§ μλλΌλ μ체 μΉνμ΄μ§μμ μ¬μ©μμ μνΈμμ©μ νκΈ° μν΄ μ
λ ₯κ°μ΄λ λ²νΌκ³Ό κ°μ μ΄λ²€νΈ μμκ° νμν λ μ¬μ©λλ HTMLμ νκ·Έκ° λ°λ‘ <form> μ΄λ€.
HTML5 form μμ
HTMLμ νΌμ μ¬μ©μμ μΉμ¬μ΄νΈ λλ μ΄ν리μΌμ΄μ μ΄ μλ‘ μνΈ μμ©νλ κ² μ€ μ€μν κΈ°μ μ€μ νλμ΄λ€. νΌμ μ¬μ©μκ° μΉμ¬μ΄νΈμ λ°μ΄ν°λ₯Ό μ μ‘ν΄μ£ΌκΈ°λ νλ©° μ΄λ°μ μΉνμ΄μ§κ° μ λ ₯ λ°μ΄ν°λ₯Ό μ¬μ©νκΈ° μνμ¬ μ¬μ©ν μ λ μλ€.
HTMLμ νΌμ μ΄μ©λλ νκ·Έλ λ€μκ³Ό κ°μ΄ λͺκ°μ§ μλ€. νΌ μμλ μ체μ μΌλ‘ μμμ μμ±νλ κ²μ΄ μλλΌ <input>, <label> λ±κ³Ό κ°μ νμ μμ μμλ₯Ό ν¬ν¨νλ 컨ν
μ΄λμ΄λ€. μ΄ νκ·Έλ€μ μ‘°ν©νμ¬ λ‘κ·ΈμΈ νλ©΄ κ³Ό κ°μ΄ μ
λ ₯ μμ νλ©΄μ ꡬμ±νκ² λλ κ²μ΄λ€.
Tag | Description |
μ¬μ© μΈ‘μμ μ λ ₯μ μ λ ₯νλ HTML μμμ μ μ | |
μ λ ₯ 컨νΈλ‘€μ μ μ | |
λ€μ€ λΌμΈ μ λ ₯ 컨νΈλ‘€μ μ μ | |
μ λ ₯ μμμ λ μ΄λΈμ μ μ | |
κ΄λ ¨ μμλ₯Ό μμμΌλ‘ κ·Έλ£Ήν | |
<fieldset> μμμ λν μΊ‘μ μ μ μ | |
λλ‘λ€μ΄ λͺ©λ‘μ μ μ | |
λλ‘λ€μ΄ λͺ©λ‘μμ κ΄λ ¨ μ΅μ κ·Έλ£Ήμ μ μ | |
λλ‘λ€μ΄ λͺ©λ‘μμ μ΅μ μ μ μν© | |
ν΄λ¦ κ°λ₯ν λ²νΌμ μ μν© |
<form> νκ·Έ
- μ λ ₯ μμ μ 체λ₯Ό κ°μΈλ νκ·Έ
- formμ 컨νΈλ‘€ μμ(control element)λ‘ κ΅¬μ±λλ€.
Form νκ·Έμ μμ± | μ€λͺ |
method | μ μ‘ λ°©μ μ ν - get : 256~4096 byteκΉμ§λ§ μ μ‘ κ°λ₯ - post : μ λ ₯ λ΄μ©μ κΈΈμ΄μ μ ν X |
name | formμ μ΄λ¦ μλ²λ‘ μ μΆλ νΌ λ°μ΄ν°(form data)λ₯Ό μ°Έμ‘°νκΈ° μν΄ μ¬μ© |
action | formμ μ μ‘ν μλ² μͺ½μ script νμΌμ μ§μ μ μ‘λλ μλ² url λλ html λ§ν¬ |
target | actionμμ μ§μ ν script νμΌμ νμ¬ μ°½μ΄ μλ λ€λ₯Έ μμΉμ μ΄λλ‘ μ§μ |
autocomplete | μλ μμ±. onμΌλ‘ λͺ μνλ©΄, λΈλΌμ°μ λ μ¬μ©μκ° μ΄μ μ μ λ ₯νλ κ°λ€μ κΈ°λ°μΌλ‘ μ¬μ©μκ° μ λ ₯ν κ°κ³Ό λΉμ·ν κ°λ€μ λλ‘λ€μ΄ μ΅μ μΌλ‘ 보μ¬μ€λ€. |
enctype | νΌ λ°μ΄ν°(form data)κ° μλ²λ‘ μ μΆλ λ ν΄λΉ λ°μ΄ν°κ° μΈμ½λ©λλ λ°©λ²μ λͺ
μ - application/x-www-form-urlencoded κΈ°λ³Έκ°μΌλ‘, λͺ¨λ λ¬Έμλ€μ μλ²λ‘ 보λ΄κΈ° μ μ μΈμ½λ©λ¨μ λͺ μν¨. - multipart/form-data λͺ¨λ λ¬Έμλ₯Ό μΈμ½λ©νμ§ μμμ λͺ μν¨. μ΄ λ°©μμ <form> μμκ° νμΌμ΄λ μ΄λ―Έμ§λ₯Ό μλ²λ‘ μ μ‘ν λ μ£Όλ‘ μ¬μ©ν¨. - text/plain 곡백 λ¬Έμ(space)λ "+" κΈ°νΈλ‘ λ³ννμ§λ§, λλ¨Έμ§ λ¬Έμλ λͺ¨λ μΈμ½λ©λμ§ μμμ λͺ μν¨. |
novalidate | νΌ λ°μ΄ν°(form data)λ₯Ό μλ²λ‘ μ μΆν λ ν΄λΉ λ°μ΄ν°μ μ ν¨μ±μ κ²μ¬νμ§ μμμ λͺ μ |
<!-- /action_page.php λ‘ get λ°©μμΌλ‘ νκ·Έ λ΄μ μ
λ ₯κ°λ€μ μ μΆ -->
<form name="profile" action="/action_page.php" method="get" autocomplete="on">
<input type="text" name="id"> <!-- μ
λ ₯λ -->
<select> <!-- λλ‘λ€μ΄ λ©λ΄ -->
<option value="blue">red</option>
<option value="blue">blue</option>
<option value="blue">green</option>
</select>
<input type="submit" value="Submit"> <!-- μλ² μ μΆ λ²νΌ -->
</form>
See the Pen form νκ·Έ 1 by barzz12 (@inpaSkyrim) on CodePen.
μ μΆ(submit) λ²νΌμ ν΄λ¦νλ©΄ input νκ·Έμ μ λ ₯λ κ°κ³Ό select, option νκ·Έμ μ νλ λ©λ΄κ°μ΄ form νκ·Έμ method μμ±μ μ§μ λ λ°©μ(get)μΌλ‘ action μμ±μ μ§μ λ μλ²μΈ‘μ μ²λ¦¬ λ‘μ§(/action_page.php)μ μ λ¬λκ² λλ€. κ·Έλ¬λ©΄ μλ²μμ name μμ±μΌλ‘ μ§μ λ μ΄λ¦μΌλ‘ λ³μκ°μ λ°μ λ°μ΄ν°λ₯Ό μ»μ΄ μ²λ¦¬λ₯Ό νλ κ²μ΄λ€. (μμ μμ λ μλ² μ€μ μ΄ μμΌλ μ€μ λ‘ μ μΆλμ§λ μλλ€)
μ΄μ²λΌ <form> νκ·Έλ μ¬μ©μμ μνΈμμ©ν μ
λ ₯λμ΄λ λ©λ΄, λ²νΌ νκ·Έλ€μ μ μνκ³ μ΄λ₯Ό λ¬Άκ³ μ΄λμ μ΄λ»κ² μΈμ μ μΆν μ§ νκ·Έ μμ±μΌλ‘ μ§μ νλ κ²μΌλ‘ 보면 λλ€.
form μμλ₯Ό μ¬μ©ν λ μ£Όμν μ¬νμΌλ‘λ<form></form>νκ·Έ μ¬μ΄μλ λ€λ₯Έ<form>νκ·Έκ° μ½μ μ΄ μλλ©°,<form>μ μ΄λ¦ μμ±μ ν νμ΄μ§μμ μ€λ³΅νμ¬ μ¬μ©νλ©΄ μ λλ€.
<input> νκ·Έ
- μ¬μ©μκ° μ 보λ₯Ό μ λ ₯νλ λΆλΆμ λ§λ€μ΄μΌ ν λ μ¬μ©
- typeμ λ°λΌ μ΄λ€ νμμΌλ‘ νΌ μμμ μ ν μ§ κ²°μ νλ€ (λ²νΌ / μ΄λ©μΌ μ λ ₯ / λΉλ°λ²νΈ μ λ ₯ ..λ±)
- μλ νμμ λΉ¨κ°μμΌλ‘ μΉ μμ±μ΄ μ£Όλ‘ μ°μΈλ€κ³ 보면 λλ€
input μμ± | μ€λͺ |
readonly | μ½κΈ° μ μ© νλλ‘ λ§λ€κΈ° |
placeholder | ννΈ νμ(νλ ν΄λ¦μ λ΄μ© μ¬λΌμ§) |
autofocus | νμ΄μ§λ₯Ό λΆλ¬μ€μ λ§μ νΉμ λΆλΆμ λ§μ°μ€ 컀μκ° νμλλλ‘ νλ κ² |
autocomplete | μλμμ± μ€μ |
max / min | <input> νλμ μ΅λκ°κ³Ό μ΅μκ° μ§μ |
maxLength | ν μ€νΈ νλμ μ΅λλ‘ μ λ ₯ν μ μλ λ¬Έμμ κ°μ μ§μ |
step | μ«μμ κ°κ²© μ€μ <input> μ΄ date, datetime, datetime-local, month, week,time, number, rangeμΌ κ²½μ°λ§ μ¬μ©κ°λ₯ |
required | νμ μ λ ₯ νλ μ§μ (λΉμΉΈμ΄λ©΄ μ λμ΄κ°) |
type β | input νκ·Έμ νμ
μ μ§μ λ¨μν ν μ€νΈμ λ ₯μ°½μΈμ§ μ΄λ©μΌ, μ νλ²νΈ μμ νΉμ νμΌμ²¨λΆ, λμμ μ²¨λΆ μΈμ§ |
<form>
First name :<br>
<input type="text" name="firstname" maxLength="3" required><br> <!-- νμμ
λ ₯ + 3μ μ ν -->
Last name :<br>
<input type="text" name="lastname"><br>
λ³λͺ
:<br>
<input type="text" name="alias" placeholder="μμμ μλ΅"> <!-- ννΈ νμ -->
</form>
See the Pen form νκ·Έ 2 by barzz12 (@inpaSkyrim) on CodePen.
inputμ type μμ± μ’ λ₯
HTML <input> μμ μ€μ κ°μ₯ μ€μν μμ±μ type μμ±μ΄λ€. μ΄ typeμ΄ μ΄λ€ κ²μ΄λμ λ°λΌ κ·Έλ₯ λ²νΌμ΄ λ μλ μκ³ μ
λ ₯ ν
μ€νΈλμ΄ λ μλ μκ³ λΌλμ€ λ²νΌμ΄ λ μλ μκΈ° λλ¬Έμ΄λ€. κ·Έλ¦¬κ³ κ°μ μ
λ ₯λμ΄λΌλ μ΄λ©μΌ μ
λ ₯μΈμ§ μ νλ²νΈ μ
λ ₯μΈμ§ λΉλ°λ²νΈ μ
λ ₯μΈμ§ λͺ¨λ ꡬλΆνμ¬, μ
λ ₯μ΄ μλͺ»λ κ²½μ° μλ΄ λ©μΈμ§λ₯Ό λμ°λ, μ¬μ©μμ μνΈμμ© μμλ₯Ό λ³΄λ€ λ°μ΄λκ² ν΄μ€ μ λ μλ€.
input type μμ± | μ€λͺ |
hidden | μλ²λ‘ 보λ΄λ κ°λ€μ 보λ΄λ νλ(μ¬μ©μμκ²λ 보μ΄μ§ X) |
text | ν μ€μ§λ¦¬ ν
μ€νΈλ₯Ό μ
λ ₯ν μ μλ ν
μ€νΈ μμ <input type="text" value="write email or phone number" size="10" maxlength="5" /> |
search | κ²μμμ (ν¬λ‘¬μ΄λ μ¬ν리μμλ§ μ¬μ© κ°λ₯νλ©° ν¬λ‘μ€λΈλΌμ°μ§μ΄ μλκΈ°μ μ μ¬μ©νμ§λ μλλ€.) |
tel | μ νλ²νΈ μ
λ ₯ νλ <input type="tel" /> |
url | URL μ£Όμλ₯Ό μ
λ ₯ νλ <input type="url" /> |
λ©μΌμ£Όμ μ
λ ₯ νλ '@' κ° λ€μ΄κ° μ΄λ©μΌ νμμΈμ§ κ²μ¬ν΄μ€λ€. <input type="email" id="useremail" name="useremail" /> |
|
password | λΉλ°λ²νΈ μ
λ ₯ νλ <input name="password" required type="password" placeholder="Password" /> |
number | μ«μλ₯Ό μ‘°μ ν μ μλ νμ΄ν |
range | μ«μ λ²μλ₯Ό μ‘°μ ν μ μλ μ¬λΌμ΄λ λ§λ min κ³Ό maxλ‘ λ²μλ₯Ό μ§μ νκ³ step μΌλ‘ μ¦κ° κ°μ μΈν ν μ μλ€. μ°Έκ³ λ‘ κΈ°λ³Έ μΈν μ νλμμΌλ‘ λμ΄μλλ°, CSSλ‘ μ»€μ€ν°λ§μ΄μ§μ ν μ μλ€. λ€λ§ κ° λΈλΌμ°μ λ§λ€ κ°λ₯ν μ λκ° λ€λ₯΄λ νμΈν νμκ° μλ€. <input type="range" id="volume" name="volume" min="0" max="11" /> |
color | μμν |
checkbox | 체ν¬λ°μ€ (2κ°μ΄μ μ ν κ°λ₯) <input type="checkbox" id="cookie" name="cookie" checked> <label for="cookie">Cookie</label> |
radio | λΌλμ€ λ²νΌ (1κ°λ§ μ ν κ°λ₯) <input type="radio" id="apple" name="drone" value="apple" checked> <label for="huey">Apple</label> |
datetime | κ΅μ νμ€μ(UTC)λ‘ μ€μ λ λ μ§μ μκ°(μ°, μ, μΌ, μ, λΆ, μ΄, λΆν μ΄) |
datetime-local | μ¬μ©μκ° μλ μ§μμ κΈ°μ€μΌλ‘ ν λ μ§μ μκ°(μ°, μ, μΌ, μ, λΆ, μ΄, λΆν μ΄) |
date | μ¬μ©μ μ§μμ κΈ°μ€μΌλ‘ ν λ μ§(μ°, μ, μΌ) <input type="date" id="start" name="trip-start" value="2018-07-22" min="2018-01-01" max="2018-12-31"> |
month | μ¬μ©μ μ§μμ κΈ°μ€μΌλ‘ ν λ μ§(μ°, μ) |
week | μ¬μ©μ μ§μμ κΈ°μ€μΌλ‘ ν λ μ§(μ°, μ£Ό) |
time | μ¬μ©μ μ§μμ κΈ°μ€μΌλ‘ ν μκ°(μ, λΆ, μ΄, λΆν μ΄) |
button | λ²νΌμ λ§λ€μ΄ ν΄λ¦νμ λ μ΄λ²€νΈλ₯Ό λ°μμν¬ μ μλ€. Submitκ³Όλ μ°¨μ΄κ° μλ€. JavaScriptλ₯Ό μ¬μ©ν΄ ν¨κ³Όλ₯Ό λ§λ€λ©΄ λλ€. <input type="button" value="μ μ°½ μ΄κΈ°" onclick="window.open()" /> |
file | νμΌμ 첨λΆν μ μλ λ²νΌ (acceptλ₯Ό μ¬μ©ν΄ μ μΆ κ°λ₯ν νμΌ μμμ μ§μ ν μλ μλ€.) <input type="file" accept=".doc,.docx" /> |
submit | μλ²μ μ‘ λ²νΌ <input type="submit" value="Log In" /> |
image | submit λ²νΌ λμ μ¬μ©ν μ΄λ―Έμ§ |
reset | 리μ
λ²νΌ μ¬μ©μκ° μ λ ₯ν λͺ¨λ μ 보λ₯Ό μ§μΈ μ μλ€. ν΄λΉ Formμ μ λ ₯νλ λ΄μ©λ€μ μ²μλΆν° μ λ ₯νκ³ μΆμ λ νμ©ν¨. <input type="reset" /> |
<h3>button</h3>
<input type="button" value="Click me" onclick="alert('Hello world!')">
<hr>
<h3>checkbox</h3>
<input type="checkbox" name="fruit1" value="apple" checked> μ¬κ³Ό<br>
<input type="checkbox" name="fruit2" value="grape"> ν¬λ<br>
<input type="checkbox" name="fruit3" value="peach"> 볡μμ<br>
<hr>
<h3>color</h3>
<input type="color" name="mycolor">
<hr>
<h3>date</h3>
<input type="date" name="birthday">
<hr>
<h3>datetime</h3>
<input type="datetime" name="birthdaytime">
<hr>
<h3>datetime-local</h3>
<input type="datetime-local" name="birthdaytime">
<hr>
<h3>email</h3>
<input type="email" name="useremail">
<hr>
<h3>file</h3>
<input type="file" name="myfile">
<hr>
<h3>hidden</h3>
<input type="hidden" name="country" value="Norway">
hidden filedλ μ¬μ©μμ νμλμ§ μλλ€.
<hr>
<h3>image</h3>
<input type="image" src="img/img_submit.gif" alt="Submit" width="48" height="48">
<hr>
<h3>month</h3>
<input type="month" name="birthdaymonth">
<hr>
<h3>number</h3>
<input type="number" name="quantity" min="2" max="10" step="2" value="2">
<hr>
<h3>password</h3>
<input type="password" name="pwd">
<hr>
<h3>radio</h3>
<input type="radio" name="gender" value="male" checked> λ¨μ<br>
<input type="radio" name="gender" value="female"> μ¬μ<br>
<hr>
<h3>range</h3>
<input type="range" name="points" min="0" max="10" step="1" value="5">
<hr>
<h3>reset</h3>
<input type="reset">
<hr>
<h3>search</h3>
<input type="search" name="googlesearch">
<hr>
<h3>submit</h3>
<input type="submit" value="Submit">
<hr>
<h3>tel</h3>
<input type="tel" name="mytel">
<hr>
<h3>text</h3>
<input type="text" name="myname">
<hr>
<h3>time</h3>
<input type="time" name="mytime">
<hr>
<h3>url</h3>
<input type="url" name="myurl">
<hr>
<h3>week</h3>
<input type="week" name="week_year">
See the Pen formλͺ¨μ by barzz12 (@inpaSkyrim) on CodePen.
<textarea> νκ·Έ
- textarea μμλ input μμμ "text" νμ κ³Ό λΉμ·ν ννμ΄λ€. νμ§λ§ "text" νμ μ input μμλ ν μ€λ§ μ λ ₯μ΄ κ°λ₯νμ§λ§, <textarea> νκ·Έλ μ¬λ¬ μ€μ κΈ΄ λ΄μ©μ μ λ ₯νλ κ²μ΄ κ°λ₯νλ€.
- ν μ€νΈ μ°½μ λλΉμ λμ΄λ HTMLμμλ cols, rows μμ±μΌλ‘, CSSμμλ widthμ height κ°μΌλ‘ μ§μ ν μλ μλ€.
- form νκ·Έμ ν¨κ» μ¬μ©ν΄ κ°μν, μκΈ°μκ°μ μ μΆ λ±μ μ©λλ‘ μ¬μ©ν μ μλ€.
textarea μμ± | μ€λͺ |
autofocus | νμ΄μ§κ° λ‘λλ λ μλμΌλ‘ ν¬μ»€μ€κ° <textarea> μμλ‘ μ΄λλ¨μ λͺ μν¨. |
cols | ν μ€νΈ μ λ ₯ μμ μ€ λ³΄μ΄λ μμμ λλΉλ₯Ό λͺ μν¨. |
dirname | νΌ λ°μ΄ν°(form data)κ° μλ²λ‘ μ μΆλ λ μλ²λ‘ λ³΄λΌ ν μ€νΈ μ λ ₯ μμμ ν μ€νΈ λ°©ν₯μ±(text directionality)μ μ μ₯ν μ΄λ¦μ λͺ μν¨. (μΈμ λ μ΄λ¦ λ€μ “.dir”λ₯Ό μΆκ°ν¨) |
disabled | ν΄λΉ <textarea> μμκ° λΉνμ±νλ¨μ λͺ μν¨. |
form | ν΄λΉ <textarea> μμκ° ν¬ν¨λ νλ μ΄μμ <form> μμλ₯Ό λͺ μν¨. |
maxlength | <textarea> μμμμ νμ©λλ μ΅λ λ¬Έμμλ₯Ό λͺ μν¨. |
name | <textarea> μμμ μ΄λ¦μ λͺ μν¨. |
placeholder | <textarea> μμμ μ λ ₯λ κ°μ λν 짧μ ννΈλ₯Ό λͺ μν¨. |
readonly | <textarea> μμμ ν μ€νΈ μ λ ₯ μμμ΄ μ½κΈ° μ μ©μμ λͺ μν¨. |
required | νΌ λ°μ΄ν°(form data)κ° μλ²λ‘ μ μΆλκΈ° μ ν μ€νΈ μ λ ₯ μμμ΄ λ°λμ μ±μμ Έ μμ΄μΌ ν¨μ λͺ μν¨. |
rows | ν μ€νΈ μ λ ₯ μμ μ€ λ³΄μ΄λ μμμ λΌμΈμλ₯Ό λͺ μν¨. |
wrap | νΌ λ°μ΄ν°(form data)κ° μλ²λ‘ μ μΆλ λ μ λ ₯λ ν μ€νΈμ μ€λ°κΏ(wrap) λ°©μμ λͺ μν¨. |
<form action="/examples/media/action_target.php" method="get">
<textarea name="opinion" cols="30" rows="5" placeholder="μ¬κΈ°μ μ¨μ£ΌμΈμ~">
</textarea>
<br>
<input type="submit">
</form>
See the Pen form νκ·Έ 3 by barzz12 (@inpaSkyrim) on CodePen.
<label> νκ·Έ
- λ μ΄λΈ(label) κ·Έ μ체λ‘λ ν¨κ³Όκ° μμ§λ§, input νκ·Έλ₯Ό μ μ΄νμ¬ μνκ°μ λ³κ²½ νλλ‘ λλ μν μ νλ€
- λ μ΄λΈ νκ·Έλ₯Ό ν΄λ¦νλ©΄ ν μ€νΈ 컨νΈλ‘€μ μ΄μ μ΄ λ§μΆ°μ Έ μ¬μ©μ±μ΄ λμμ§λ€. νΉν λͺ¨λ°μΌμ΄λ νλΈλ¦Ώ νκ²½μμ κ°μ μ λ°νλ€.
<form name="selectFruit">
<!-- 체ν¬λ°μ€λ₯Ό λλ¬μΌ 체ν¬κ° λλ€ -->
<input type="checkbox" /> λ°λλ
<br>
<!-- λ μ΄λΈμ΄ μλ€λ©΄ ν
μ€νΈ μμμ ν΄λ¦ν΄λ 체ν¬κ° λλ€ -->
<label>
<input type="checkbox" /> λ°λλ
</label>
</form>
See the Pen form νκ·Έ 5 by barzz12 (@inpaSkyrim) on CodePen.
λ μ΄λΈ λΆλ¦¬
λ§μΌ μ€νμΌλ‘ μΈν΄ μμ κ°μ΄ <label> μμ <input> νκ·Έκ° μμΉνλ νμμ μ·¨ν μ μκ³ λ°λ‘ λΆλ¦¬ν΄μΌ νλ€λ©΄, <label> νκ·Έμ for μμ±μ ν΅ν΄ <input> νκ·Έμ 맀ν μν¬ μ μλ€.
μλ μ½λλ βlabel νκ·Έμμ μμμ ν΄λ¦ν κ²½μ° for μμ±μ΄ μ§μ λ fruititem μ΄λΌλ id κ°μ μ°Ύκ² λλ€. μ¦ μλμ input νκ·Έκ° μ격μΌλ‘, μλμΌλ‘ ν΄λ¦ν κ²κ³Ό κ°μ΄ λμνκ² λλ€.
<!-- for μμ±μ ν΅ν΄ νκ·Έλ₯Ό λΆλ¦¬ν μλ μλ€ -->
<input id="fruitItem" type="checkbox" />
<label for="fruitItem">λ°λλ</label>
<select> & <option> νκ·Έ
- λλ‘ λ©λ΄μμ μ νμ ν μ μλ μμμ μμ±
<select>μμ λ΄λΆμ<option>μμλ λλ‘λ€μ΄ 리μ€νΈ(drop-down list)μμ μ¬μ©λλ κ°κ°μ μ΅μ μ μ μ
μμ±λͺ | μ€λͺ |
autofocus | νμ΄μ§κ° λ‘λλ λ μλμΌλ‘ ν¬μ»€μ€(focus)κ° λλ‘λ€μ΄ 리μ€νΈλ‘ μ΄λλ¨μ λͺ μν¨. |
disabled | ν΄λΉ λλ‘λ€μ΄ 리μ€νΈκ° λΉνμ±νλ¨μ λͺ μν¨. |
form | ν΄λΉ λλ‘λ€μ΄ 리μ€νΈκ° ν¬ν¨λ νλ μ΄μμ <form> μμλ₯Ό λͺ μν¨. |
multiple | μ¬μ©μκ° ν λ²μ λ κ° μ΄μμ μ΅μ μ μ νν μ μμμ λͺ μν¨. |
name | λλ‘λ€μ΄ 리μ€νΈμ μ΄λ¦μ λͺ μν¨. |
required | νΌ λ°μ΄ν°(form data)κ° μλ²λ‘ μ μΆλκΈ° μ μ¬μ©μκ° λ°λμ λλ‘λ€μ΄ 리μ€νΈμ κ°μ μ νν΄μΌ ν¨μ λͺ μν¨. |
size | λλ‘λ€μ΄ 리μ€νΈμμ ν λ²μ λ³΄μΌ μ΅μ μ κ°μλ₯Ό λͺ μν¨. |
<label for="pet-select">Choose a pet:</label>
<br />
<select name="pets" id="pet-select">
<option value="">--Please choose an option--</option>
<option value="dog">Dog</option>
<option value="cat">Cat</option>
<option value="hamster">Hamster</option>
<option value="parrot">Parrot</option>
<option value="spider">Spider</option>
<option value="goldfish">Goldfish</option>
</select>
See the Pen form 콀보λ°μ€ 1 by barzz12 (@inpaSkyrim) on CodePen.
<option>νκ·Έμμ μ¬μ©νλ value μμ±μ ν μ€νΈ νλμμμ value μμ±κ³Όλ μ‘°κΈ ν리λ€. ν μ€νΈ νλμμ value μμ±μ κ°μ μ λ ₯νλ©΄ κΈ°λ³Έκ°μ΄ μ λ ₯λμ§λ§<option>νκ·Έμ κ²½μ°λ μ΄ λͺ©λ‘μ΄ μ νλ κ²½μ° μ μ‘λλ κ°μ μ§μ νλ κ²μ΄λ€.
콀보λ°μ€ κΈ°λ³Έκ° μ§μ
<label for="pet-select">Choose a pet:</label><br />
<select name="pets" id="pet-select">
<option value="">--Please choose an option--</option>
<option value="dog">Dog</option>
<option value="cat">Cat</option>
<option value="hamster" selected>Hamster</option> <!-- κΈ°λ³Έκ°μ νμ€ν°λ‘ μλ μ€μ -->
<option value="parrot">Parrot</option>
<option value="spider">Spider</option>
<option value="goldfish">Goldfish</option>
</select>
See the Pen form 콀보λ°μ€ 2 by barzz12 (@inpaSkyrim) on CodePen.
νΉμ νλͺ© μ ν κΈμ§
<label for="pet-select">Choose a pet:</label><br />
<select name="pets" id="pet-select">
<option value="">--Please choose an option--</option>
<option value="dog">Dog</option>
<option value="cat">Cat</option>
<option value="hamster">Hamster</option>
<option value="parrot">Parrot</option>
<option value="spider" disabled>Spider</option> <!-- κ±°λ―Έλ μ νμ΄ μλλλ‘ μ²λ¦¬ -->
<option value="goldfish">Goldfish</option>
</select>
See the Pen form 콀보λ°μ€ 3 by barzz12 (@inpaSkyrim) on CodePen.
λ§μΌ μμ ν λͺ©λ‘μμ μμ κ³ μΆμλ° νκ·Έλ λ¨κ²¨λκ³ μΆλ€λ©΄ hidden μμ±μ μ¨μ£Όλ©΄ λλ€.
콀보λ°μ€ λ€μ€ μ ν
<select>νκ·Έμ size μμ±μ μ§μ ν΄ μ£Όλ©΄ λλ‘λ€μ΄ ννκ° μλ, μ ν λͺ©λ‘μ΄ μ§μ λ ν¬κΈ°λ§νΌ 보μ¬μ§κ² λλ€.
λ§μΌ νλͺ©μ κ°―μλ³΄λ€ sizeκ° μμΌλ©΄ μλμΌλ‘ μ€ν¬λ‘€μ΄ μμ±λλ€.<select>νκ·Έμ multiple μμ±μ μ§μ ν΄ μ£Όλ©΄ 'shift' λλ 'ctrl' ν€λ₯Ό λλ₯΄κ³ νλͺ©μ μ ννλ©΄ μ€λ³΅μΌλ‘ νλͺ© μ νμ΄ κ°λ₯νκ² λλ€.
<label for="pet-select">Choose a pet:</label><br />
<!-- λͺ©λ‘ μ¬μ΄μ¦κ° 4μ€ + shiftλ‘ λ€μ€ μ ν -->
<select name="pets" id="pet-select" size=4 multiple>
<option value="dog">Dog</option>
<option value="cat">Cat</option>
<option value="hamster">Hamster</option>
<option value="parrot">Parrot</option>
<option value="spider">Spider</option>
<option value="goldfish">Goldfish</option>
</select>
See the Pen form 콀보λ°μ€ 4 by barzz12 (@inpaSkyrim) on CodePen.
콀보λ°μ€ κ·Έλ£Ή μ§μ
<optgroup>νκ·Έλ₯Ό μ¬μ©νλ©΄ λͺ©λ‘μ κ·Έλ£Ήν νμ¬ μΉ΄ν κ³ λ¦¬λ₯Ό ꡬλΆνμ¬ λ³΄μ¬μ€λ€.<optgroup>μ label μμ±μλ μΉ΄ν κ³ λ¦¬λ₯Ό ꡬλΆν λ 보μ¬μ€ textλ₯Ό λ£μ΄μ€λ€.
<label for="pet-select">Choose a pet:</label><br />
<select name="pets" id="pet-select">
<option value="">--Please choose an option--</option>
<optgroup label="ν¬μ λ₯"> <!-- μ νλͺ©λ‘ κ·Έλ£Ή -->
<option value="dog">Dog</option>
<option value="cat">Cat</option>
<option value="hamster">Hamster</option>
</optgroup>
<optgroup label="μ‘°λ₯">
<option value="parrot">Parrot</option>
</optgroup>
<optgroup label="λ¬Όκ³ κΈ°">
<option value="goldfish">Goldfish</option>
<option value="spider">Shark</option>
</optgroup>
</select>
See the Pen form 콀보λ°μ€ 5 by barzz12 (@inpaSkyrim) on CodePen.
<datalist> νκ·Έ
- μμ
<select>νκ·Έλ μ€λ‘μ§ μ νλ§ ν μ μλ λ°λ©΄,<datalist>λ 리μ€νΈμμ μ΄λ νκ°μ§λ₯Ό μ ννκ±°λ ν€μλμ μ λ ₯ν μ μλ€λ μ°¨μ΄μ μ΄ μλ€
<!-- <input>μ list μμ±κ°κ³Ό <datalist>μ idλͺ
μ λκ°μ΄ λ§μΆ°μ£Όμ΄μΌ λμλλ€. -->
<label for="movie">What is your favourite Browser?</label>
<input type="text" list="browsers"/>
<datalist id="browsers">
<option value="Internet Explorer">
<option value="Firefox">
<option value="Chrome">
<option value="Opera">
<option value="Safari">
</datalist>
See the Pen form νκ·Έ 7 by barzz12 (@inpaSkyrim) on CodePen.
<feildset> & <legend> νκ·Έ
- fieldset νκ·Έλ κ΄λ ¨λ μ λ ₯ μμλ€μ κ·Έλ£Ήνν λ μ¬μ©νλ€.
- legend νκ·Έλ fieldset νκ·Έ λ΄μμ μ¬μ©λμΌ νλ©° κ·Έλ£Ήνλ fieldsetμ μ λͺ©μ μ μνλ€.
<form>
<fieldset>
<legend> Login </legend>
ID : <input type="text" /> <br>
password : <input type="password" />
</fieldset>
<br>
<fieldset>
<legend> Login 2 </legend>
E-mail : <input type="e-mail" /> <br>
password : <input type="password" />
</fieldset>
</form>
See the Pen form νκ·Έ 6 by barzz12 (@inpaSkyrim) on CodePen.
<button> νκ·Έ
- λ²νΌ μμ. νμ΄μ§μ λ²νΌμ λ£κ³ formμ μ μ‘νκ±°λ reset ν λ μ¬μ©νλ€.
button type μμ± | μ€λͺ |
submit | form μ μΆ <button type="submit"> μ μ‘ </button> |
reset | from 리μ
<button type="reset"> λ€μμ°κΈ° </button> |
button | λ²νΌμ ννλ§ λ§λ λ€. λ리거λ νμλ λ€λ₯Έ λμμ νλ €λ©΄ λ°λ‘ ν¨μλ₯Ό μ°κ²°ν΄μΌν¨ |
<button type="button" onclick="alert('onclickμ alertλ₯Ό μ°λ©΄ μ΄λ°μμΌλ‘ κ²½κ³ μ°½μ΄ λ¬λ€.')">
Click Me!
</button>
See the Pen form νκ·Έ 4 by barzz12 (@inpaSkyrim) on CodePen.
<button> vs <input> μ°¨μ΄μ
μμμ λ°°μ΄ <input type="button"> μΌλ‘ λ²νΌμ λ§λ€μ μλλ° μ΄ λμ μ°¨μ΄μ μ 무μμΌκΉ?
<input>νκ·Έλ μ’ λ£νκ·Έ μμ΄ type μμ± μ΄μ©ν΄ λ²νΌμ κΈμλ μ΄λ―Έμ§ λ£μ§λ§,<button>νκ·Έλ μμνκ·Έμ μ’ λ£νκ·Έ μ¬μ΄μ κΈμλ μ΄λ―Έμ§ λ£λλ€- νμ
<button>νκ·Έμ type μμ±μ λͺ μν΄μ€μΌ νλ€. μλνλ©΄, IE(μ΅μ€νλ‘λ¬) κ²½μ° κΈ°λ³Έ νμ μ΄ button μ΄μ§λ§, ν λΈλΌμ°μ κ²½μ° κΈ°λ³Έ νμ μ΄ submit μ΄κΈ° λλ¬Έμ΄λ€. <form>νκ·Έ μμμ λ²νΌ λ§λ€ λ, λ°λμ<input>νκ·Έ μ΄μ©ν΄ λ²νΌ λ§λ€μ΄μΌ νλ€. μλνλ©΄, ν λΈλΌμ°μ κ°<button>νκ·Έμ μμ±κ°μ μ μ‘νλ λ°λ©΄, IEλ μμνκ·Έμ μ’ λ£νκ·Έ μ¬μ΄μ ν μ€νΈλ μ΄λ―Έμ§ μ μ‘νκΈ° λλ¬Έμ΄λ€.
# μ°Έκ³ μλ£
https://www.javatpoint.com/html-form
https://www.nextree.co.kr/p8428/
https://internetingishard.com/html-and-css/forms/
https://poiemaweb.com/html5-tag-forms
http://www.tcpschool.com/html-tags/textarea
https://webisfree.com/2017-01-10/label-%ED%83%9C%EA%B7%B8%EB%A5%BC-%EC%82%AC%EC%9A%A9%ED%95%98%EB%8A%94-%EB%8B%A4%EC%96%91%ED%95%9C-%EB%B0%A9%EB%B2%95