▶ HTML <input> 요소의 다양한 form 속성을 설명한다.

 

■ form 속성

▶ input "form" 속성은 <input> 요소가 속한 form을 지정한다.

▶ 속성값은 속해 있는 <form> 요소의 "id" 속성과 같아야 한다.

<form action="/action_page.php" id="form1">
  <label for="fname">First name:</label>
  <input type="text" id="fname" name="fname"><br><br>
  <input type="submit" value="Submit">
</form>

<label for="lname">Last name:</label>
<input type="text" id="lname" name="lname" form="form1">

실습 : https://www.w3schools.com/html/tryit.asp?filename=tryhtml5_input_form 

 

■ formaction 속성

▶ input "formaction" 속성은 form이 제출될 때 input을 처리할 파일의 url를 지정한다.

※ 속성은 <form> 요소의 "action" 속성을 재정의한다.

▶ "formaction" 속성은 submit과 image input 유형과 같이 동작한다.

<form action="/action_page.php">
  <label for="fname">First name:</label>
  <input type="text" id="fname" name="fname"><br><br>
  <label for="lname">Last name:</label>
  <input type="text" id="lname" name="lname"><br><br>
  <input type="submit" value="Submit">
  <input type="submit" formaction="/action_page2.php" value="Submit as Admin">
</form>

실습 : https://www.w3schools.com/html/tryit.asp?filename=tryhtml5_input_formaction 

 

■ formenctype 속성

▶ input "formenctype" 속성은 제출될 때 form 데이터를 인코딩하는 방법을 지정한다. ( method="post"가 있는 양식에만 해당 )

※ 속성은 <form> 요소의 "enctype" 속성을 재정의한다.

▶ "formenctype" 속성은 submit 과 image input 요소와 함게 동작한다.

<form action="/action_page_binary.asp" method="post">
  <label for="fname">First name:</label>
  <input type="text" id="fname" name="fname"><br><br>
  <input type="submit" value="Submit">
  <input type="submit" formenctype="multipart/form-data"
  value="Submit as Multipart/form-data">
</form>

실습 : https://www.w3schools.com/html/tryit.asp?filename=tryhtml5_input_formenctype 

 

■ formmethod 속성

▶ input "formmethod" 속성은 form 데이터를 action URL로 전송하기 위한 HTTP 메소드를 정의한다.

※ 속성은 <form> 요소의 "method" 속성을 재정의한다.

▶ "formmethod" 속성은 submit, image input 유형과 함께 동작한다.

▶ form 데이터는 URL 변수 ( method="get" ) 또는 HTTP  post 트랜잭션 ( method="post" )으로 보낼 수 있다.

 

□ "get" 메소드

▶ "get" 메소드는 form 데이터를 이름/값 쌍의 URL에 추가한다.

▶ 사용자가 결과를 북마크하려는 form 제출에 유용하다.

▶ URL에 넣을 수 있는 데이터의 양에는 제한이 있으므로( Browser마다 다름 ) 모든 form 데이터가 올바르게 전송되는지 확신할 수 없다.

▶ 중요한 정보를 전달하기 위해 "get" 방법을 사용하지 않는다. ( 암호 또는 기타 민감한 정보는 Browser의 주소 표시줄에 표시된다. )

 

□ "post" 메소드

▶ "post" 메소드는 form 데이터를 HTTP post 트랜잭션으로 보낸다.

▶ "post" 방법을 사용한 form 제출은 북마크할 수 없다.

▶ "post" 방법은 "get"보다 강력하고 안전하며 "post"에는 크기 제한이 없다.

<form action="/action_page.php" method="get">
  <label for="fname">First name:</label>
  <input type="text" id="fname" name="fname"><br><br>
  <label for="lname">Last name:</label>
  <input type="text" id="lname" name="lname"><br><br>
  <input type="submit" value="Submit using GET">
  <input type="submit" formmethod="post" value="Submit using POST">
</form>

실습 : https://www.w3schools.com/html/tryit.asp?filename=tryhtml5_input_formmethod 

 

■ formtarget 속성

▶ input "formtarget" 속성은 form을 제출한 후 수신된 응답을 표시할 위치를 나타내는 이름이나 키워드를 지정한다.

※ 속성은 <form> 요소 "target" 속성을 재정의한다.

▶ "formtarget" 속성은 submit 및 image input 유형과 함께 동작한다.

<form action="/action_page.php">
  <label for="fname">First name:</label>
  <input type="text" id="fname" name="fname"><br><br>
  <label for="lname">Last name:</label>
  <input type="text" id="lname" name="lname"><br><br>
  <input type="submit" value="Submit">
  <input type="submit" formtarget="_blank" value="Submit to a new window/tab">
</form>

실습 : https://www.w3schools.com/html/tryit.asp?filename=tryhtml5_input_formtarget 

 

■ formnovalidate 속성

▶ input "formnovalidate" 속성은 제출 시 <input> 요소의 유효성을 검사하지 않도록 지정한다.

※ 속성은 <form> 요소의 "novalidate" 속성을 재정의한다.

▶ "formnovalidate" 속성은 submit input 유형과 함께 동작한다.

<form action="/action_page.php">
  <label for="email">Enter your email:</label>
  <input type="email" id="email" name="email"><br><br>
  <input type="submit" value="Submit">
  <input type="submit" formnovalidate="formnovalidate"
  value="Submit without validation">
</form>

실습 : https://www.w3schools.com/html/tryit.asp?filename=tryhtml5_input_formnovalidate 

 

■ novalidate 속성

▶ "novaildate" 속성은 <form> 속성이다.

▶ "novalidate"가 있는 경우 제출 시 모든 form 데이터의 유효성을 검사하지 않아야 함을 지정한다.

<form action="/action_page.php" novalidate>
  <label for="email">Enter your email:</label>
  <input type="email" id="email" name="email"><br><br>
  <input type="submit" value="Submit">
</form>

실습 : https://www.w3schools.com/html/tryit.asp?filename=tryhtml5_form_novalidate 

 

출처 : https://www.w3schools.com/html/html_form_attributes_form.asp

 

HTML Input form* Attributes

W3Schools offers free online tutorials, references and exercises in all the major languages of the web. Covering popular subjects like HTML, CSS, JavaScript, Python, SQL, Java, and many, many more.

www.w3schools.com

'HTML' 카테고리의 다른 글

HTML / (55) Input 속성  (0) 2023.03.06
HTML / (54) Input Type  (0) 2023.03.06
HTML / (53) form 요소  (0) 2023.03.01
HTML / (52) 폼 속성  (0) 2023.03.01
HTML / (51) Forms  (0) 2023.02.28

■ 모든 <form> 속성 목록

▶ accept-charset : 폼 제출에 사용되는 문자 인코딩을 지정한다.

▶ action : 양식이 제출될 때 양식 데이터를 보낼 위치를 지정한다.

▶ autocomplete : 양식의 자동 완성 기능을 켜거나 끌지 여부를 지정한다.

▶ enctype : 폼 데이터를 서버에 제출할 때 인코딩하는 방법을 지정한다. ( method=post에만 해당 )

▶ method : 폼 데이터를 보낼 때 사용할 HTTP 메소드를 지정한다.

▶ name : 양식의 이름을 지정한다.

▶ novalidate : 폼이 제출될 때 검증되지 않도록 지정한다.

▶ rel : 연결된 리소스와 현재 문서 간의 관계를 지정한다.

▶ target : 폼을 제출한 후 받은 응답을 표시할 위치를 지정한다.

 

▶ <form> 요소에 대한 다양한 속성을 설명한다.

 

■ action 속성

▶ "action" 속성은 양식이 제출될 때 수행할 조치를 정의한다.

▶ 일반적으로 사용자가 제출 버튼을 클릭하면 양식 데이터가 서버의 파일로 전송된다.

▶ 아래 예에서 양식 데이터는 "action_page.php"라는 파일로 전송된다.

▶ 이 파일에는 양식 데이터를 처리하는 서버측 스크립트가 포함되어 있다.

<form action="/action_page.php">
  <label for="fname">First name:</label><br>
  <input type="text" id="fname" name="fname" value="John"><br>
  <label for="lname">Last name:</label><br>
  <input type="text" id="lname" name="lname" value="Doe"><br><br>
  <input type="submit" value="Submit">
</form>

실습 : https://www.w3schools.com/html/tryit.asp?filename=tryhtml_form_attributes_submit 

 

■ target 속성

▶ "target" 속성은 양식을 제출한 후 수신된 응답을 표시할 위치를 지정한다.

▶ "target" 속성은 다음 값 중 하나를 가질 수 있다.

▷ _blank : 응답이 새 창이나 탭에 표시된다.

▷ _self : 응답이 현재 창에 표시된다.

▷ _parent : 응답이 상위 프레임에 표시된다.

▷ _top : 응답이 창 전체에 표시된다.

▷ <framename> : 이름이 지정된 iframe에 응답이 표시된다.

▶ 기본값은 "_self"이며 응답이 현재 창에서 열린다.

<form action="/action_page.php" target="_blank">

실습 : https://www.w3schools.com/html/tryit.asp?filename=tryhtml_form_target 

 

■ method 속성

▶ "method" 속성은 폼 데이터를 제출할 때 사용할 HTTP 메소드를 지정한다.

▶ 폼 데이터는 URL 변수(method=get 포함) 또는 HTTP post 트랜잭션(method=post)으로 보낼 수 있다.

▶ 기본적으로 폼 데이터를 제출할 때 HTTP 메소드는 GET 이다.

<form action="/action_page.php" method="get">

실습 : https://www.w3schools.com/html/tryit.asp?filename=tryhtml_form_get 

 

<form action="/action_page.php" method="post">

실습 : https://www.w3schools.com/html/tryit.asp?filename=tryhtml_form_post 

 

□ GET에 대한 참고사항

▶ 폼 데이터를 이름/값 쌍으로 URL에 추가한다.

▶ GET을 사용하여 민감한 데이터를 보내면 안된다. (제출된 폼 데이터는 URL에서 볼 수 있다.)

▶ URL의 길이는 제한되어 있다.(2048 제한)

▶ 사용자가 결과를 북마크하려는 양식 제출에 유용하다.

▶ GET은 Google의 쿼리 문자열과 같은 비보안 데이터에 적합하다.

□ POST에 대한 참고사항

▶ HTTP 요청 본문 내부에 양식 데이터를 추가한다. (제출된 양식 데이터는 URL에 표시되지 않는다.)

▶ POST는 크기 제한이 없으며 많은 양의 데이터를 보내는 데 사용할 수 있다.

▶ POST를 사용한 양식 제출은 북마크할 수 없다.

※ 폼 데이터에 민감하거나 개인 정보가 포함된 경우 항상 POST를 사용한다.

 

■ autocomplete 속성

▶ "autocomplete" 속성은 폼의 자동 오나성 기능을 켜거나 끌지 여부를 지정한다.

▶ 자동 완성이 커져 있으면 Browser는 사용자가 이전에 입력한 값을 기반으로 값을 자동으로 완성한다.

<form action="/action_page.php" autocomplete="on">

실습 : https://www.w3schools.com/html/tryit.asp?filename=tryhtml_form_autocomplete 

 

■ novalidate 속성

▶ "novalidate" 속성은 boolean 속성이다.

▶ 존재하는 경우 폼 데이터(입력)가 제출될 때 유효성을 검사하지 않아야 함을 지정한다.

<form action="/action_page.php" novalidate>

실습 : https://www.w3schools.com/html/tryit.asp?filename=tryhtml_form_novalidate 

 

출처 : https://www.w3schools.com/html/html_forms_attributes.asp

 

HTML Form Attributes

W3Schools offers free online tutorials, references and exercises in all the major languages of the web. Covering popular subjects like HTML, CSS, JavaScript, Python, SQL, Java, and many, many more.

www.w3schools.com

 

'HTML' 카테고리의 다른 글

HTML / (54) Input Type  (0) 2023.03.06
HTML / (53) form 요소  (0) 2023.03.01
HTML / (51) Forms  (0) 2023.02.28
HTML / (50) HTML vs XHTML  (0) 2023.02.27
HTML / (49) URL (Uniform Resource Locators)  (0) 2023.02.27

▶ HTML 폼은 사용자 입력을 수집하는데 사용된다.

▶ 사용자 입력은 대부분 처리를 위해 서버로 전송된다.

실습 : https://www.w3schools.com/html/tryit.asp?filename=tryhtml_form_submit 

 

■ <form> 요소

▶ HTML <form> 요소는 사용자 입력을 위해 HTML 폼을 만드는데 사용된다.

<form>
.
form elements
.
</form>

▶ <form> 요소는 텍스트 필드, 확인란, 라디오 버튼, 제출 버튼 등과 같은 다양한 유형의 .input 요소에 대한 컨테이너이다.

 

■ <input> 요소

▶ HTML <input> 요소는 주로 사용되는 form 요소이다.

▶ <input> 요소는 "type" 속성에 따라 다양한 방식으로 표시될 수 있다.

▷ <input type="text"> : 한 줄 텍스트 입력 필드를 표시한다.

▷ <input type="radie"> : 라디오 버튼을 표시한다. ( 많은 선택지 중 하나 선택 )

▷ <input type="checkvox"> : 체크박스를 표시한다. ( 많은 선택지 중 선택하지 않거나 하나 이상을 선택 )

▷ <input type="submit"> : 제출 버튼을 표시한다. ( 양식 제출용 )

▷ <input type="button"> : 클릭가능한 버튼을 표시한다.

▶ 많은 input 유형을 확인은 다음 URL에서 확인한다 : https://www.w3schools.com/html/html_form_input_types.asp

 

■ 텍스트 필드

▶ <input type="text">는 텍스트 입력을 위한 한 줄 입력 필드를 정의한다.

<form>
  <label for="fname">First name:</label><br>
  <input type="text" id="fname" name="fname"><br>
  <label for="lname">Last name:</label><br>
  <input type="text" id="lname" name="lname">
</form>

실습 : https://www.w3schools.com/html/tryit.asp?filename=tryhtml_form_text 

 

※ form 자체는 보이지 않으며 입력 필드의 기본 너비는 20자이다.

 

■ <label> 요소

▶ 위의 텍스트 필드 예시 중 <label> 요소의 사용에 주목한다.

▶ <label> 태그는 많은 form 요소에 대한 라벨을 정의한다.

▶ <label> 요소는 화면 판독기 사용자에게 유용하다. 왜냐하면 사용자가 입력 요소에 초점을 맞출 때 화면 판독기가 라벨을 소리내어 읽어주기 때문이다.

▶ <lable> 요소는 또한 매우 작은 영역(예: 라디오 버튼 또는 확인란)을 클릭하는 데 어려움이 있는 사용자에게 도움이 된다.

▶ 사용자가 <label> 요소 내의 텍스트를 클릭하면 라디오 버튼/확인란이 토글되기 때문이다.

▶ <label> 태그의 "for" 요소는 <input> 요소의 "id" 속성과 같아야 함께 묶일 수 있다.

 

■ 라디오 버튼

▶ <input type="radio">는 라디오 버튼을 정의한다.

▶ 라디오 버튼을 사용하면 제한된 수의 선택 항목 중 하나를 선택할 수 있다.

<p>Choose your favorite Web language:</p>

<form>
  <input type="radio" id="html" name="fav_language" value="HTML">
  <label for="html">HTML</label><br>
  <input type="radio" id="css" name="fav_language" value="CSS">
  <label for="css">CSS</label><br>
  <input type="radio" id="javascript" name="fav_language" value="JavaScript">
  <label for="javascript">JavaScript</label>
</form>

실습 : https://www.w3schools.com/html/tryit.asp?filename=tryhtml_form_radio 

▶ 위의 HTML 코드가 Browser에 표시되는 방식은 다음과 같다.

 

 

 

■ 체크박스

▶ <input type="checkbox">는 체크박스를 정의한다.

▶ 체크박스를 사용하면 제한된 수의 선택 항목 중 선택하지 않거나 하나이상의 옵션을 선택할 수 있다.

<form>
  <input type="checkbox" id="vehicle1" name="vehicle1" value="Bike">
  <label for="vehicle1"> I have a bike</label><br>
  <input type="checkbox" id="vehicle2" name="vehicle2" value="Car">
  <label for="vehicle2"> I have a car</label><br>
  <input type="checkbox" id="vehicle3" name="vehicle3" value="Boat">
  <label for="vehicle3"> I have a boat</label>
</form>

실습 : https://www.w3schools.com/html/tryit.asp?filename=tryhtml_input_checkbox 

▶ 위의 HTML 코드가 Browser에 표시되는 방식은 다음과 같다.

 

 

 

■ 제출 버튼

▶ <input type="submit">은 양식 데이터를 폼 처리기에 제출하기 위한 버튼을 정의한다.

▶ 폼 처리기는 일반적으로 입력 데이터를 처리하기 위한 스크립트가 있는 서버의 파일입니다.

▶ 폼 핸들러는 양식의 "action" 속성에 지정된다.

<form action="/action_page.php">
  <label for="fname">First name:</label><br>
  <input type="text" id="fname" name="fname" value="John"><br>
  <label for="lname">Last name:</label><br>
  <input type="text" id="lname" name="lname" value="Doe"><br><br>
  <input type="submit" value="Submit">
</form>

실습 : https://www.w3schools.com/html/tryit.asp?filename=tryhtml_form_submit 

 

■ <input>에 대한 속성 이름

▶ 각 입력 필드에는 제출할 "name" 속성이 있어야 한다.

▶ "name" 속성이 생략되면 입력 필드의 값이 전혀 전송되지 않는다.

<form action="/action_page.php">
  <label for="fname">First name:</label><br>
  <input type="text" id="fname" value="John"><br><br>
  <input type="submit" value="Submit">
</form>

실습 : https://www.w3schools.com/html/tryit.asp?filename=tryhtml_form_submit_id 

 

출처 : https://www.w3schools.com/html/html_forms.asp

 

HTML Forms

W3Schools offers free online tutorials, references and exercises in all the major languages of the web. Covering popular subjects like HTML, CSS, JavaScript, Python, SQL, Java, and many, many more.

www.w3schools.com

 

'HTML' 카테고리의 다른 글

HTML / (53) form 요소  (0) 2023.03.01
HTML / (52) 폼 속성  (0) 2023.03.01
HTML / (50) HTML vs XHTML  (0) 2023.02.27
HTML / (49) URL (Uniform Resource Locators)  (0) 2023.02.27
HTML / (48) 인코딩 (문자 집합)  (0) 2023.02.27

+ Recent posts