Jak budete vytvářet HTML formulář?
sobes.tech AI
Odpověď od AI
Pro vytvoření HTML formuláře použiji prvek <form>. Uvnitř budou umístěny ovládací prvky, jako jsou textová pole (<input type="text">), pole pro heslo (<input type="password">), zaškrtávací políčka (<input type="checkbox">), radiobuttony (<input type="radio">), rozbalovací seznamy (<select> a <option>), textové oblasti (<textarea>) a tlačítka odeslání (<button type="submit"> nebo <input type="submit">).
Každý prvek formuláře bude mít atribut name pro identifikaci na serverové straně a obvykle i atribut id pro spojení s popiskem (<label>).
Atributy <form>:
action: URL, kam budou data formuláře odeslána.method: Metoda HTTP požadavku pro odeslání dat (GET nebo POST).enctype: Typ kódování dat při odeslání (napříkladmultipart/form-datapro nahrávání souborů).
Příklad jednoduchého formuláře:
<form action="/submit-form" method="post">
<label for="username">Uživatelské jméno:</label><br>
<input type="text" id="username" name="username"><br><br>
<label for="password">Heslo:</label><br>
<input type="password" id="password" name="password"><br><br>
<input type="checkbox" id="remember" name="remember" value="yes">
<label for="remember">Zapamatovat si mě</label><br><br>
<label for="country">Země:</label><br>
<select id="country" name="country">
<option value="ru">Rusko</option>
<option value="us">USA</option>
</select><br><br>
<label for="message">Zpráva:</label><br>
<textarea id="message" name="message" rows="4" cols="50"></textarea><br><br>
<button type="submit">Odeslat</button>
</form>
Validace formuláře může být realizována jak na straně klienta (s využitím HTML5 validace, JavaScriptu), tak na straně serveru.
HTML5 validace:
required: Pole je povinné vyplnit.minlength,maxlength: Minimální a maximální délka textového pole.min,max: Minimální a maximální hodnota pro číselná pole.types různými hodnotami (email, url, number, date atd.) pro automatickou validaci prohlížečem.pattern: Regulární výraz pro validaci vstupu.
Příklad s HTML5 validací:
<form action="/submit-form" method="post">
<label for="email">Email:</label><br>
<input type="email" id="email" name="email" required><br><br>
<label for="age">Věk (od 18 do 99):</label><br>
<input type="number" id="age" name="age" min="18" max="99"><br><br>
<label for="zipcode">PSČ (5 číslic):</label><br>
<input type="text" id="zipcode" name="zipcode" pattern="\d{5}"><br><br>
<button type="submit">Odeslat</button>
</form>
Pro stylování formuláře se používá CSS. Pro složitější logiku nebo asynchronní odeslání dat se používá JavaScript. Pro zvýšení přístupnosti formuláře se používají odpovídající ARIA atributy a správná struktura HTML.