Nei form HTML se si sta compilando una casella di testo e si preme il tasto Invio, l’azione invierà i dati compilati nel modulo, anche se non avete finito di riempire il resto delle informazioni.

Ci sono molti siti che utilizzano questa funzione, come la casella di ricerca di Google che invia il criterio di ricerca quando si preme il tasto Invio. Questo funziona, perché in questo caso si ha una sola una casella di testo da compilare, ma se ci sono più di un campo da compilare sicuramente non si vuole inviare i dati del modulo premendo il tasto Invio.
Per cambiare questa caratteristica di base è necessario aggiungere un po’ di Javascript nella pagina per fermare questo evento. Io uso jQuery, che mi risparmia diverse righe di codice. Il seguente frammento di codice mostra come è possibile disattivare il tasto Invio utilizzando jQuery.
[code lang=”javascript”] $("form").keypress(function(e) {
// Tasto Invio
if (e.which == 13) {
return false;
}
});
[/code]
In questo modo si controlla quale tasto è stato premuto e se si tratta del tasto Invio la funzione restituirà un false, arrestando l’invio dei dati del modulo.