salve ho un problema con uno javascript d controllo su un form, m fa il controllo e m dice se il campo è vuoto, ma quando si apre l'alert e clicco ok invia la pagina ugualmente,

<script language="javascript">
function invalid()
{
if (document.form1.nome.value.length < 2)
{
alert("Please enter your name");
return false;
}
if (document.form1.email.value.length < 6)
{
alert("Please enter your email");
return false;
}
if (document.form1.messaggio.value.length < 2)
{
alert("You left your message blank");
return false;
}
return true;
}
</script>

in cosa sbaglio?come posso far controllare la validità della mail? che controlli che abbia la forma nome@diminio.ext? spero che qualcuno mi possa aiutare
2.584 messaggi dal 14 maggio 2001
Anche se ci sono i vari if arriva comunque all'ultimo return true ed esegue il submit...
metti degli else if...

....
else if (document.form1.messaggio.value.length < 2)
{
alert("You left your message blank");
return false;
}
else
{return true; }
}
</script>
Modificato da seoman il 16 settembre 2004 15.35 -
ho modificato lo script cosi

<script language="javascript">
function invalid()
{
if (document.form1.nome.value.length < 2)
{
alert("Please enter your name");
return false;
}
else if (document.form1.email.value.length < 6)
{
alert("Please enter your email");
return false;
}
else if (document.form1.messaggio.value.length < 2)
{
alert("You left your message blank");
return false;
}
else
{return true;}
}
</script>


ma sempre uguale, sbaglio in qualcsa?

<input type="submit" name="Submit" value="Contatto" OnClick="invalid();"> cosi è giusto o devo mettere OnSubmit?

se invece di vedere se il campo mail è vuoto vorrei controllare la correttezza del formato nome@dominio.ext?
2.584 messaggi dal 14 maggio 2001
Il javascript è ora corretto... devi mettere a livello form:

<form .... onsubmit="return(invalid())">

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.