Výuka IT

Formuláře

Formuláře jsou velmi důležité, protože umožňují návštěvníkům vaší stránky zadávat informace – např. své jméno, zprávu, vybrat si něco ze seznamu nebo nahrát soubor. Všechny formuláře začínají značkou <form>.

Základní formulář

Uvnitř značek <form> a </form> jsou zejména vstupní pole (<input>) a popisky (<label>)

<form>
    <label for="jmeno">Vaše jméno:</label><br>
    <input type="text" id="jmeno" name="jmeno"><br><br>
    <input type="submit" value="Odeslat jméno">
</form>

Důležité atributy formuláře: action a method

Když uživatel odešle formulář (klikne na tlačítko "Odeslat"), data se někam pošlou. Kam a jak, to určují atributy action a method u značky <form>.

Vstupní pole (<input>): Různé typy

Značka <input> je samouzavírací a je to nejčastější prvek ve formulářích. Atribut type (typ) určuje, jaký druh vstupního pole to bude:

Rozbalovací nabídky

Když chcete, aby uživatel vybral z dlouhého seznamu možností, je vhodné použít rozbalovací nabídku.

<label for="barva">Vyberte si oblíbenou barvu:</label>
<select id="barva" name="barva">
    <option value="cervena">Červená</option>
    <option value="modra">Modrá</option>
    <option value="zelena">Zelená</option>
</select>

Atribut value u <option> je hodnota, která se odešle, když je tato možnost vybrána.

Víceřádkové textové pole (<textarea>)

Když chcete, aby uživatel mohl napsat delší zprávu (např. vzkaz, komentář), použijte značku <textarea>.

<label for="zprava">Napište vzkaz:</label><br>
<textarea id="zprava" name="zprava" rows="5" cols="40" placeholder="Sem napište vzkaz..."></textarea>

Atribut required (Povinné pole)

Pokud chcete, aby uživatel musel pole vyplnit, než odešle formulář, přidejte atribut required.

<label for="jmeno_povinne">Vaše jméno (povinné):</label><br>
<input type="text" id="jmeno_povinne" name="jmeno_povinne" required>

Cvičení: Moje super anketa!

Úkol: Vytvořte novou sekci <h2> "Moje Anketa".

  1. Vytvořte formulář (<form>).
  2. Přidejte textové pole pro "Jméno" (s label a placeholder). Udělejte ho povinné.
  3. Přidejte číselné pole pro "Věk" (s min a max hodnotami, např. 5-100).
  4. Přidejte sadu přepínačů (radio buttons) pro otázku: "Co máte nejraději?" (možnosti: "Hraní her", "Čtení knížek", "Venek s kamarády").
  5. Přidejte rozbalovací nabídku s otázkou: "Která barva se Vám líbí nejvíce?" (možnosti: "Modrá", "Zelená", "Žlutá", "Červená").
  6. Přidejte textové pole (<textarea>) pro "Váš vzkaz".
  7. Na konec formuláře přidejte tlačítka "Odeslat" a "Resetovat".

Uložte a zkuste si vyplnit i odeslat váš formulář! Co se stane, když nevyplníte povinné pole?