Salve Ragazzi, ho un problema con un form e il suo controllo in javascript.
Ho un form chiamato modulo e tre campi : name, email e message (Serve appunto per inviare l'email).
Lo script utilizzato controlla che le caselle di testo non siano vuote. Nel caso risultino vuote, avvisa l'utente (alert) e posiziona il cursore nella casella (focus). Con tutte le altre pagine funziona, con questa in HTML5 invece esegue l'alert e ricarica la pagina (e cancella le altre 2 caselle di testo "riempite").
attualmente, l'unica differenza che noto è che questa pagina è cosi composta da paragrafi:
è possibile che questo impedisca al javascript di eseguire il focus senza ricaricare la pagina?Codice HTML:<html> <head> javascript </head> <body> <section id="a"> <section id="b"> <section id="c"> </body> </html>
allego il codice javascript e il codice html del modulo.
Riepilogando, gli alert funzionano bene, l'unica imprecisione è che non esegue il focus, ma ricarica la pagina e tutti i dati inseriti vengono cancellati.Codice HTML:<script> <!-- function Modulo() { if(document.modulo.name.value=="") { alert("Inserisci il Nome e Cognome"); document.modulo.name.focus(); return false; } else if (document.modulo.email.value=="") { alert("Inserisci la tua email"); document.modulo.email.focus(); return false; } st = document.modulo.email.value; var espressione = new RegExp("^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+[\.]([a-z0-9-]+)*([a-z]{2,3})$"); if ( !espressione.test(st) ){ alert("Questa Mail non è valida"); document.modulo.email.focus() return false; } else if (document.modulo.message.value=="") { alert("Inserisci un messaggio"); document.modulo.message.focus(); return false; } else { document.modulo.action = "mail.php"; document.modulo.submit(); } //----> } </script> <form name="modulo" method="post"> <div class="row half"> <div class="6u"><input type="text" class="text" name="name" placeholder="Nome e Cognome" /></div> <div class="6u"><input type="text" class="text" name="email" placeholder="Email" /></div> </div> <div class="row half"> <div class="12u"> <textarea name="message" placeholder="Messaggio"></textarea> </div> </div> <div class="row"> <div class="12u"> <a href="" onClick="Modulo()" class="button submit">Richiedi un Preventivo</a> </div> </div> </form>

4Likes
LinkBack URL
About LinkBacks


