Wprowadzenie do walidacji formularzy w HTML5
Wprowadzenie do walidacji formularzy w HTML5
Walidacja formularzy to proces sprawdzania poprawności danych wpisywanych przez użytkownika. HTML5 wprowadza szereg wbudowanych mechanizmów walidacyjnych, które działają automatycznie – bez potrzeby stosowania JavaScriptu.
Dzięki nim możesz ograniczyć liczbę błędów, poprawić jakość danych i ułatwić użytkownikowi poprawne wypełnienie formularza.
Dlaczego walidacja jest ważna?
- Chroni formularz przed wysłaniem błędnych danych.
- Poprawia jakość informacji przesyłanych do serwera.
- Zwiększa komfort użytkownika, informując go od razu o błędach.
Wbudowane typy pól z walidacją
Niektóre typy <input> mają wbudowane reguły walidacji, np.:
type="email"– akceptuje tylko poprawny adres e-mail.type="url"– wymaga poprawnego adresu URL (np. https://strona.pl).type="number"– pozwala wpisać tylko liczby.type="date"– umożliwia wybór daty z kalendarza.
<form> <label for="email">Adres e-mail:</label> <input type="email" id="email" required> <br><br> <label for="wiek">Wiek:</label> <input type="number" id="wiek" min="18" max="99"> <br><br> <button type="submit">Wyślij</button> </form>
Działanie: Formularz nie zostanie wysłany, jeśli użytkownik nie wpisze poprawnego e-maila lub poda wiek poza zakresem 18–99.
Użycie atrybutów wspierających walidację
HTML5 oferuje dodatkowe atrybuty, które wzmacniają walidację formularzy:
required– pole musi zostać wypełnione.minimax– określają zakres wartości (dlanumber,dateitp.).maxlength– maksymalna liczba znaków.pattern– wymaga dopasowania do wzorca (wyrażenia regularnego).
<input type="text" name="kod" pattern="[A-Z]{3}[0-9]{3}" required placeholder="ABC123">
To pole wymaga wpisania 3 wielkich liter i 3 cyfr, np. ABC123.
Wyświetlanie komunikatów błędów
Każda przeglądarka automatycznie wyświetla prosty komunikat, gdy użytkownik wpisze błędne dane. Możesz jednak spersonalizować tę wiadomość za pomocą atrybutu title.
<input type="text" pattern="[0-9]{6}" title="Wpisz 6 cyfr" required>
✅ Praktyczne ćwiczenie
Wejdź na JSFiddle i przetestuj poniższy formularz:
<form>
<label for="email">Email:</label>
<input type="email" id="email" placeholder="np. jan@domena.pl" required>
<br><br>
<label for="wiek">Wiek (18-99):</label>
<input type="number" id="wiek" min="18" max="99" required>
<br><br>
<label for="kod">Kod (ABC123):</label>
<input type="text" id="kod" pattern="[A-Z]{3}[0-9]{3}" title="Wpisz 3 wielkie litery i 3 cyfry" required>
<br><br>
<button type="submit">Wyślij formularz</button>
</form>
📌 Podsumowanie
- HTML5 oferuje automatyczną walidację formularzy bez JavaScriptu.
- Dzięki typom pól, wzorcom i zakresom możesz precyzyjnie kontrolować dane.
- Atrybuty takie jak
required,pattern,min,maxititlesą kluczowe dla walidacji.
Opanowanie tych mechanizmów to ważny krok w tworzeniu bezpiecznych i profesjonalnych formularzy!
