Newsgroup: it.comp.lang.javascript
Titolo: validazione form

ciao ragazzi.mi serve il vostro aiuto
ho fatto un form php semplice con nome,cognome,mail.
volevo controllarlo e ho scoperto che č meglio farlo in javascript lato
client con le regexpr.
ho creato 3 funzioni,una a campo. il problema č che non conosco bene il
linguaggio e se faccio
onSubmit="return ControllaNome()" funziona bene, solo che non so come
concatenarli tutti e tre.
mi servirebbe qualche cosa del tipo
 onSubmit="return ControllaNome(), return ControllaCognome(), return
ControllaMail()".
come si fa a fare in modo che mi controlli tutte e tre le funzioni
separatamente.
grazie per l'aiuto
---
Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (
http://www.grisoft.com
).
Version: 6.0.443 / Virus Database: 248 - Release Date: 10/01/2003

 concatenarli tutti e tre.
[cut]
Se ControllaNome() č ok, passa a ControllaCognome(), altrimenti avvisi e
return false;
...e cosě via per gli altri.
Tipo:
function ControllaNome() {
if (controllo!=ok) {
    alert("Il nome non va bene");
    return false;
    } else { return ControllaCognome(); }
}
function ControllaCognome() {
// stessa cosa
}
--
A presto. Ro!
Lo staff di Risorse.net
http://www.risorse.net

 }
---


 come faccio a fare if not?per il resto come ti sembra?
Quando non sai fare qualcosa cerca una soluzione alternativa.
Ovvero, fai il contrario :))
Non sai fare if not A else B? fai if yes B else A ;))
Ad ogni modo, antemponi il ! all'istruzione.


perchè non va cazzo!!?? penso sia l'if finale.mi aiutate??
<script language="JavaScript">
function controlla_form() {
EmailAddr = document.form.email.value;
Filtro =
/^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-]{2,})+\.)+([a-zA-Z0-9]{2,})+$/;
if(document.form.nome.value == ""){
alert("Controlla se hai inserito il nome!");
document.form.nome.focus();
return false;
}
if(document.form.cognome.value == ""){
alert("Controlla se hai inserito il cognome!");
document.form.cognome.focus();
return false;
}
if(document.form.eta.value == ""){
alert("Controlla se hai inserito l\'età!");
document.form.eta.focus();
return false;
}
if (document.form.email.value != "") &&
!(Filtro.test(document.form.email.value)) {
alert("Controlla l'indirizzo di e-mail inserito");
document.form.email.focus();
return false;
}
   return true;
}
</script>
perchè non va cazzo!!?? penso sia l'if finale.mi aiutate??
<script language="JavaScript">
function controlla_form() {
EmailAddr = document.form.email.value;
Filtro =
/^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-]{2,})+\.)+([a-zA-Z0-9]{2,})+$/;
if(document.form.nome.value == ""){
alert("Controlla se hai inserito il nome!");
document.form.nome.focus();
return false;
}
if(document.form.cognome.value == ""){
alert("Controlla se hai inserito il cognome!");
document.form.cognome.focus();
return false;
}
if(document.form.eta.value == ""){
alert("Controlla se hai inserito l\'età!");
document.form.eta.focus();
return false;
}
if (document.form.email.value != "") &&
!(Filtro.test(document.form.email.value)) {
alert("Controlla l'indirizzo di e-mail inserito");
document.form.email.focus();
return false;
}
   return true;
}
</script>

Prova a portare il not dentro la parentesi (&&(!....))


Prova a usare questa libreria di script che ho realizzato qualche tempo fa:
http://sourceforge.net/snippet/detail.php?type=snippet&id=100320
Fammi sapere se ti è utile, se trovi qualche malfunzionamento, se hai
qualche problema.
Ciao.

Carina...
Anch'io ne ho fatta una simile (anzi, la logica ci assomiglia molto), solo
che lavora anche lato server per costruire la form (e mette anche vari
onClick-onChange, del tipo "se checkbox abilitata abilitata anche la textbox
accanto" o simile)
Prima o poi la sistemo e la rendo disponibile