Come ti diceva darkhero, occhio a <form name="invia">. Occhio anche a <script language="javascript">: si tratta di una scrittura deprecata. Oggi si usa: <script type="text/javascript">[…]</script>.
Dal tipo di codice si vede che usi un libro datato. Provo ad ammodernartelo un po'. Magari dagli un'occhiata…
codice:<!doctype html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> <title>Caselle di Testo</title> <script type="text/javascript"> function numbersOnly (oKeyEvent) { return oKeyEvent.charCode === 0 || /\d/.test(String.fromCharCode(oKeyEvent.charCode)); } function controlla () { var nom = document.invia.nome.value; var cognom = document.invia.cognome.value; var ann = parseFloat(document.invia.anno.value); var tipo = (new Date()).getFullYear() - ann < 18 ? "minorenne" : "maggiorenne"; alert ("Ciao" + nom + " " + cognom + ".Tu sei " + tipo); } </script> </head> <body> <h3>Benvenuto</h3> <form name="invia"> <p> Nome: <input type="text" name="nome" /><br /> Cognome: <input type="text" name="cognome" /><br /> Anno di Nascita: <input type="text" name="anno" size="4" maxlength="4" onkeypress="return numbersOnly(event);" onpaste="return false;" /> </p> <p> <input type="button" value="invia" onClick="controlla();"> </p> </form> </body> </html>![]()