Treci la conținutul principal

Formulare HTML

Un formular HTML este folosit pentru a colecta input de la un utilizator. Input-ul introdus de utilizator este cel mai adesea trimis către un server, unde este procesat.

Exemplu

Un formular simplu cu două câmpuri de text pentru prenume și nume.

Prompt
Un formular HTML minimal care colectează input de la utilizator cu două câmpuri text pe o singură linie, etichetate "First name" și "Last name". Păstrează-l ca HTML simplu, fără stilizare sau gestionare a trimiterii.
Output: pagină HTML completă

Elementul <form>

Elementul <form> este folosit pentru a crea un formular HTML pentru input-ul utilizatorului.

Este un container care conține diferitele elemente de input, precum câmpuri de text, checkbox-uri, butoane radio și butoane de trimitere. Toate elementele de formular sunt tratate în HTML Form Elements.

Structura unui formular

Un tag <form> gol, cu elemente de formular plasate în interiorul lui.

index.html
<form>
.
form elements
.
</form>

Elementul <input>

Elementul <input> este cel mai folosit element de formular.

Poate fi afișat în multe moduri diferite, în funcție de atributul său type. Câteva tipuri comune sunt: text pentru un câmp de text pe o singură linie, radio pentru un buton radio ce permite alegerea uneia dintre mai multe opțiuni, checkbox pentru a alege zero sau mai multe opțiuni, submit pentru un buton care trimite formularul și button pentru un buton pe care se poate face click.

Toate tipurile de input sunt tratate în HTML Input Types.


Câmpuri de Text

<input type="text"> creează un câmp pe o singură linie pentru scrierea textului.

Notă: Formularul în sine nu este vizibil. Lățimea implicită a unui câmp de text este de aproximativ 20 de caractere.

Exemplu

Un formular cu câmpuri de text pentru prenume și nume, fiecare cu propria etichetă.

Prompt
Un formular cu două câmpuri text pe o singură linie pentru "First name" și "Last name". Folosește un asociat fiecărui cu for și id corespunzătoare, și un după fiecare câmp.
Output: pagină HTML completă

Elementul <label>

Tag-ul <label> definește o etichetă pentru un element de formular.

Ajută utilizatorii de cititoare de ecran, deoarece cititorul de ecran citește eticheta cu voce tare când utilizatorul se deplasează la input. De asemenea, ajută persoanele care au dificultăți în a apăsa zone foarte mici, cum ar fi butoanele radio sau checkbox-urile: apăsând pe textul etichetei se comută controlul corespunzător.

Pentru a lega o etichetă de un input, setează atributul for al etichetei la aceeași valoare ca atributul id al input-ului.


Butoane Radio

<input type="radio"> creează un buton radio. Butoanele radio permit utilizatorului să aleagă DOAR UNA dintr-un set restrâns de opțiuni.

Exemplu

Un formular cu butoane radio pentru alegerea limbajului web preferat. Acestea au același name, deci se poate selecta doar unul.

Prompt
Un formular care permite utilizatorului să aleagă un limbaj web preferat folosind butoane radio pentru HTML, CSS și JavaScript. Toate butoanele radio au același name "fav_language" astfel încât doar unul poate fi selectat, fiecare cu propria etichetă.
Output: pagină HTML completă

Checkbox-uri

<input type="checkbox"> creează un checkbox. Checkbox-urile permit utilizatorului să aleagă ZERO sau MAI MULTE opțiuni dintr-un set.

Exemplu

Un formular cu trei checkbox-uri pe care utilizatorul le poate bifa sau debifa independent.

Prompt
Un formular cu trei căsuțe de bifat care permit utilizatorului să selecteze zero sau mai multe opțiuni: "I have a bike", "I have a car", "I have a boat". Fiecare căsuță are propriul name, value, id și o etichetă corespunzătoare.
Output: pagină HTML completă

Butonul de Trimitere

<input type="submit"> creează un buton care trimite datele formularului către un handler de formular.

Handler-ul de formular este de obicei un fișier de pe server cu un script care procesează input-ul. Îl setezi cu atributul action al formularului.

Exemplu

Un formular cu un buton de trimitere care trimite datele către pagina numită în atributul action.

Prompt
Un formular cu câmpuri text pentru First name și Last name precompletate cu "John" și "Doe", plus un buton de trimitere. Setează action-ul formularului la /action_page.php astfel încât butonul de trimitere să trimită datele către un handler.
Output: pagină HTML completă

Atributul Name pentru <input>

Fiecare câmp de input trebuie să aibă un atribut name pentru a fi trimis când formularul este trimis.

Dacă atributul name lipsește, valoarea acelui câmp nu este trimisă deloc.

Exemplu

Acest formular nu va trimite valoarea câmpului „prenume”, deoarece acel input nu are atribut name.

Prompt
Un formular care arată de ce contează atributul name: un câmp text pentru First name care nu are atributul name, plus un buton de trimitere. Deoarece input-ul nu are name, valoarea sa nu va fi trimisă la trimiterea formularului. Setează action-ul formularului la /action_page.php.
Output: pagină HTML completă