Quando gli sviluppatori Web creano moduli in qualsiasi applicazione Internet, è necessario applicare la convalida. La convalida dei moduli è un processo cruciale in qualsiasi processo di sviluppo di applicazioni perché aiuta a prevenire minacce alla sicurezza o dati spazzatura nel database. L’applicazione delle convalide sul lato server può essere eseguita comodamente tramite un framework o strumenti di sviluppo utilizzati nel back-end. Sul front-end, tuttavia, a volte è doloroso per gli sviluppatori convalidare i moduli poiché richiede molti sforzi. È inoltre necessario utilizzare molte librerie JavaScript anche per le convalide dei moduli HTML, aumentando le conoscenze e gli sforzi necessari.
Per superare questo problema, HTML5 ci offre una serie di funzionalità per convalidare i moduli. Queste funzionalità possono gestire la maggior parte delle tue esigenze di convalida senza richiedere alcun codice JavaScript. HTML5 semplifica anche il controllo dello stile con i CSS. Inoltre, fornisce anche funzionalità di convalida integrate attraverso l’uso di attributi speciali e nuovi tipi di input.
Leggi: Introduzione ai moduli HTML5
Tipi di input e attributi HTML5
Di seguito è riportato un elenco di alcuni dei nuovi tipi di input e degli attributi associati presenti in HTML5:
- numero
- ricerca
- telefono
- URL
- gamma
- colore
- Data
- mese
- settimana
- tempo
I nuovi attributi introdotti in HTML5 includono:
- necessario
- messa a fuoco automatica
- completamento automatico
- segnaposto
- lunghezza minima
- sola lettura
- modello
- elenco
Esempio di convalida del modulo HTML5
Conoscere i nuovi tipi e attributi di input HTML5 è necessario per convalidare i moduli. Copriamo questo processo nella nostra prossima sezione.
L’attributo ‘richiesto’ in HTML5
Aggiungendo semplicemente il necessario attribuire a qualsiasi , , o
<form> <span>Name</span> <input type="text" name="name" required> </form>
Quando un utente tenta di inviare questo modulo senza inserire il campo richiesto, mostrerà un messaggio di avviso o semplicemente impedirà l’invio del modulo.
Puoi anche usare il necessario attributo su caselle di controllo, pulsanti di opzione e menu a discesa di selezione. Con quello applicato a un campo modulo, non è possibile inviare un controllo modulo con un valore vuoto.
Leggi: Come costruire un modulo web con HTML
Limita i valori numerici sui moduli HTML5
Con HTML5, ora puoi impostare i limiti sui valori massimo e minimo per i numeri. Ad esempio, questo metodo impedisce l’immissione di qualsiasi stringa più lunga del limite massimo del campo. Se si tenta di incollare una stringa che supera il limite del campo, il modulo taglierà la stringa di conseguenza.
Se stai usando un campo di testo o area di testo, quindi è necessario utilizzare il lunghezza massima attributo invece:
L’attributo pattern in HTML5
Il modelli attributo consente agli sviluppatori web di utilizzare espressioni regolari. Quando questo attributo viene applicato, indica al browser di confrontare il valore di regex con l’input fornito dall’utente; se corrisponde, sarà possibile inviare solo il modulo. Le espressioni regolari vengono utilizzate principalmente per filtrare i dati e forniscono un ottimo controllo sull’input inserito nei moduli web.
Il seguente frammento di codice mostra come utilizzare le espressioni regolari nei moduli HTML5:
<input type="password" required pattern="^(?=.*d)[0-9a-zA-Z]{6,}$" title="Password should be a minimum of 6 character long and must contain at least one number">
In questo esempio, viene applicata un’espressione regolare a un campo password, che indica al browser di accettare solo la password che contiene almeno 6 caratteri, con almeno un valore numerico. Ecco come modello attributo utilizza espressioni regolari per filtrare i dati.
Stile con CSS in HTML5
I CSS3 sono dotati di pratiche pseudo-classi che ci permettono di dare uno stile a qualsiasi campo del form a seconda del suo stato. Queste classi sono le seguenti:
- :valido
- :non valido
- :necessario
- :opzionale
- :in-range
- :fuori dal limite
- :sola lettura
- :leggere scrivere
Per capire come funzionano queste pseudo-classi CSS, considera il seguente esempio di codice:
<form> <span>Age</span> <input type="number" name="age" min="18" required> </form>
<style type="text/css"> input:focus:invalid { border:1px solid #F5192F; box-shadow:0 0 4px #F5192F; } </style>
Per un input valido, puoi utilizzare i seguenti stili:
<style type="text/css"> input:focus:valid, { border: 1px solid #64C364; box-shadow: 0 0 4px #64C364; } </style>
Leggi: Disegnare pulsanti di opzione e caselle di controllo nei moduli HTML
Altri tipi di input HTML5
HTML5 ha introdotto alcuni nuovi tipi di input. Questi tipi di input sono facili da usare e funzionano perfettamente su browser basati su dispositivi mobili e browser basati su desktop. Sono stati inventati per accettare solo dati specificati. Ecco l’elenco di alcuni tipi di input HTML5 utilizzati di frequente:
- URL
- colore
- Data
- ricerca
- telefono
- tempo
Per utilizzare uno di questi tipi di input, puoi includerli come valore dell’attributo type. Ad esempio, dai un’occhiata al seguente frammento di codice:
<input type="url" placeholder="Enter your Website" required>
Nota che alcuni dei campi di input, come “telefono” e “e-mail” si comportano diversamente su un dispositivo mobile. Faranno sì che un dispositivo mobile apra una tastiera specifica con un numero limitato di tasti e non il pieno QWERTY tastiera del computer. Un’altra cosa da tenere presente è che se un tipo di input specifico non è supportato su un browser, si comporterà semplicemente come un normale campo di input di testo su quel browser.
Speriamo che questo post ti abbia aiutato ad aggiornarti con la convalida dei moduli HTML5. Grazie per aver letto!