
Originariamente inviata da
satifal
Credo che window.open non faccia effettivamente un submit dei dati
Confermo.
Potresti modificare così:
HTML
codice:
<!-- nota il target nel tag form e l'evento onsubmit al posto dell'evento onclick sul pulsante di invio-->
<form name="contacts-form" id="contacts-form" action="dati.php" method="post" target="nuovapagina" onsubmit="return controllaForm()">
<fieldset>Inviaci la tua richiesta di preventivo e sarai ricontattato dal nostro staff: <br><br> <label for="nome">Nome<br /></label>
<input id="nome" type="text" name="nome" onkeydown="controlla(event);"/><br><br>
<label for="cognome">Cognome<br/></label>
<input id="cognome" type="text" name="cognome" onkeydown="controlla(event);"/> <br><br>
<label for="recapito">Recapito<br /></label>
<input id="recapito" type="text" name="recapito" /> <br><br>
<label for="testo">Testo</label><br>
<textarea id="testo" name="testo" rows="7" cols="40"></textarea><input type="submit" value="Invia i dati"/>
</fieldset></form>
Javascript:
codice:
<script type="text/javascript">
function controlla(ev) {
if (ev.which==32 && ev.target.value.length==0) {
ev.preventDefault();
}
if ((ev.which<65 || ev.which>90) &&
ev.which!=8 && ev.which!=9 && ev.which!=32 && ev.which!=46 && (
ev.which<37 || ev.which>40) ) {
ev.preventDefault();
}
}
function controllaForm(){
var errori=false;
if (document.getElementById("nome").value==""){
errori=true;
} else if (document.getElementById("cognome").value=="") {
errori=true;
} else if (document.getElementById("recapito").value=="") {
errori=true;
} else if (document.getElementById("testo").value=="") {
errori=true;
}
if (errori) {
alert("Errore: compilare tutti i campi correttamente!");
return false;
} else {
window.open('about:blank','nuovapagina','width=500, height=400, left=350, top=200');
}
}
</script>
Comunque i popup sono da web 1.0