vérifiation d'email, marche moyen !
A la maniere de l'AJAX que j'ai mi a cette page de mon site, j'avais envie de faire de même pour l'adresse email qui en frappant vérifie petit a petit. Probleme le script ne marche pas. Je me suis inspiré d'un code deja existant mais ...
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
|
function verifemail(email) {
var email = email;
var aroba = email.indexOf("@");
if(email != '') {
//test si @ est présent
//si il n'est pas présent, l'adresse n'est pas valide
if (aroba == -1) {
writedivemail('<span style="color:#cc0000"><b>'+email+' :</b> n\'est pas valide</span>');
}
//vérifie si il y a un . après @ et qu'il ne se trouve pas juste derrière ("adresse@.com" non valide)
var point = email.indexOf(".", aroba);
if ((point == -1) || (point == (aroba + 1))) {
writedivemail('<span style="color:#cc0000"><b>'+email+' :</b> n\'est pas valide</span>');
}
//vérifie si il y a au moins 1 caractère après le point
//point + 1 car indexOf commence à 0.
//Si l'index est 4 et la longueur de la chaîne 5, erreur
var point = email.lastIndexOf(".");
if ((point + 1) == email.length) {
writedivemail('<span style="color:#cc0000"><b>'+email+' :</b> n\'est pas valide</span>');
}
//vérifie s'il n'y a pas deux . qui se suivent
point = email.indexOf("..")
if (point != -1) {
writedivemail('<span style="color:#cc0000"><b>'+email+' :</b> n\'est pas valide</span>');
}
else {
writedivemail('<span style="color:#1A7917"><b>'+email+' :</b> est valide</span>');
}
}
} |
la fonction writedivemail :
Code:
1 2 3 4 5
|
function writedivemail(text)
{
document.getElementById('emailbox').innerHTML = text;
} |
et le formulaire :
Code:
<input type="text" name="email" onKeyUp="verifemail(this.value)">* <span id="emailbox"></span><br /><br /><br />
Le problème est que d'après ce code l'adresse est toujours valide !