HTML: Formulare
Mit Formularen können Benutzer Informationen auf einer Website eingeben. HTML stellt dafür verschiedene Eingabefelder wie Textfelder, Zahlenfelder, Uhrzeitfelder und Checkboxen zur Verfügung.
1) Ein einfaches Formular
Hier kannst du ein vollständiges Formular ausprobieren:
2) Das <form>-Element
Das gesamte Formular wird mit
<form> und
</form> umschlossen.
<form action="#" method="get">
</form>
action gibt an, wohin die Formulardaten
gesendet werden. Mit method="get" werden
die Daten über die URL übertragen.
3) Beschriftungen mit <label>
Ein <label> beschreibt, wofür ein
Eingabefeld verwendet wird.
<label for="name">Name:</label>
<input
type="text"
id="name"
name="name"
>
Das for-Attribut des Labels sollte zum
id-Attribut des Eingabefeldes passen.
4) Das <input>-Element
Mit <input> können verschiedene
Arten von Eingabefeldern erstellt werden.
Welche Art verwendet wird, bestimmt
type.
type="text"
Eingabe von normalem Text.
type="number"
Eingabe einer Zahl.
type="time"
Auswahl einer Uhrzeit.
type="checkbox"
Eine Option kann an- oder abgewählt werden.
5) Textfeld
Für normalen Text kannst du
type="text" verwenden.
<input
type="text"
name="text"
placeholder="Schreibe etwas …"
>
Mit placeholder kannst du einen Hinweis
anzeigen, solange das Feld noch leer ist.
6) Zahlenfeld
Mit type="number" kann der Benutzer
eine Zahl eingeben.
<input
type="number"
name="anzahl"
min="0"
max="10"
>
min legt den kleinsten erlaubten Wert fest.
max legt den größten erlaubten Wert fest.
7) Uhrzeit auswählen
Für eine Uhrzeit kannst du
type="time" verwenden.
<input
type="time"
name="zeit"
>
Der Browser stellt dafür normalerweise direkt eine passende Uhrzeitauswahl zur Verfügung.
8) Checkbox
Eine Checkbox eignet sich für eine Auswahl, die aktiviert oder deaktiviert werden kann.
<input
type="checkbox"
id="agb"
name="agb"
>
<label for="agb">
AGB akzeptieren
</label>
9) Absenden-Button
Mit einem Button kann das Formular abgeschickt werden.
<button type="submit">
Absenden
</button>
type="submit" sagt dem Browser,
dass dieser Button das Formular absenden soll.
10) Komplettes Beispiel
Jetzt setzen wir die einzelnen Elemente zu einem vollständigen Formular zusammen:
<form action="#" method="get">
<label for="zeit">Uhrzeit:</label>
<input
type="time"
id="zeit"
name="zeit"
>
<label for="zahl">Zahl (0–10):</label>
<input
type="number"
id="zahl"
name="anzahl"
min="0"
max="10"
>
<label for="text">Text:</label>
<input
type="text"
id="text"
name="text"
placeholder="Schreibe etwas …"
>
<input
type="checkbox"
id="agb"
name="agb"
>
<label for="agb">
AGB akzeptieren
</label>
<button type="submit">
Absenden
</button>
</form>
11) Wofür ist name?
Das Attribut name gibt einem Eingabefeld
einen Namen. Dieser Name wird beim Absenden zusammen
mit dem eingegebenen Wert übertragen.
<input
type="text"
name="vorname"
>
Ohne name wird der Wert eines normalen
Eingabefeldes beim Absenden nicht auf dieselbe Weise
als Formulardaten mitgeschickt.
Merke
-
<form>bildet den Rahmen des Formulars. -
Mit
<label>beschreibst du Eingabefelder. -
<input>erstellt verschiedene Eingabefelder. -
typebestimmt die Art des Eingabefeldes. -
namegibt dem Feld einen Namen für die Formulardaten. -
minundmaxkönnen Zahlenbereiche begrenzen. -
<button type="submit">sendet das Formular ab.
12) Mini-Übung
Erstelle dein eigenes Formular zum Thema Sommercamp.
Dein Formular soll enthalten:
- ein Textfeld für den Namen
- ein Zahlenfeld von 1 bis 10
- ein Feld für eine Uhrzeit
- eine Checkbox
- einen Absenden-Button
Versuche anschließend, die einzelnen Felder mit
<label> sinnvoll zu beschriften.