IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

tester champ formulaire mail


Sujet :

JavaScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Février 2009
    Messages
    21
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 21
    Par défaut tester champ formulaire mail
    Bonjour,

    j'effectue une série de test de mes champs de formulaire afin d'avoir une base mysql nickel, et j'ai un soucis pour tester si l'écriture du mail est correcte.en fait je n oblige pas à rentrer un mail mais lorsque l'on en rentre un je teste si le @ et le . sont présent.
    mon soucis actuel s'est que lorsque je rentre un mail j'ai une alerte si le mail est mal orthographié et ensuite plus rien ne fonctionne je ne peux meme plus valider mon formulaire.
    voici mon prog:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    if(f.adresse1.value == ""){
    alert("Veuillez entrer votre adresse!");
    f.adresse1.focus();
    return false; }
    if(f.email.value != "") {				if((f.email.value.indexOf("@")>=0)&&(f.email.value.lastIndexOf(".")>f.email.value.indexOf("@"))) {
    return false;
    } else {
    alert("Mail invalide");f.email.focus();return false;}
    							}
    if(f.elements["list2"].options.length ==0){
    alert("Veuillez sélectionner une ville!");
    f.elements["list2"].focus();
    return false; }
    Merci pour votre aide.

  2. #2
    Membre émérite Avatar de micetf
    Homme Profil pro
    Professeur des Ecoles
    Inscrit en
    Mai 2009
    Messages
    557
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ardèche (Rhône Alpes)

    Informations professionnelles :
    Activité : Professeur des Ecoles
    Secteur : Enseignement

    Informations forums :
    Inscription : Mai 2009
    Messages : 557
    Par défaut
    D'après ton code,
    lorsque ton mail est saisi,
    mais qu'il n'est pas valide,
    tu n'affiches pas d'alerte,
    ni ne replaces le focus sur le champ email,
    tu te contentes d'un return false.

    Cela ne marcherait-il pas mieux ainsi ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    if(f.adresse1.value == ""){
    	alert("Veuillez entrer votre adresse!");
    	f.adresse1.focus();
    	return false;
    }
    if(f.email.value != "") {
    	if((f.email.value.indexOf("@")>=0)&&(f.email.value.lastIndexOf(".")>f.email.value.indexOf("@"))) {
    		alert("Mail invalide");
    		f.email.focus();
    		return false;
    	} else {
    		alert("Veuillez entrer votre mail");
    		f.email.focus();
    		return false;
    	}
    }
    if(f.elements["list2"].options.length ==0) {
    	alert("Veuillez sélectionner une ville!");
    	f.elements["list2"].focus();
    	return false;
    }
    Fred

  3. #3
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 659
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 659
    Billets dans le blog
    1
    Par défaut
    un peu léger comme validation de mail ...

    une bonne vieille expression régulière serait nettement plus performante :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ^([a-zA-Z0-9_\-\.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([a-zA-Z0-9\-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Février 2009
    Messages
    21
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 21
    Par défaut
    salut,

    comment appliquer l'expression réguliére.

    Merci.

  5. #5
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 659
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 659
    Billets dans le blog
    1
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    <script>
    function validmail(){
    var reg=/^([a-zA-Z0-9_\-\.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([a-zA-Z0-9\-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$/;
    var email=document.getElementById('champsmail').value;
    alert((reg.test(email))?'email ok':'email incorrect')
    // ou : alert((email.match(reg))?'email ok':'email incorrect')
    }
    </script>
    </head>
     
    <body>
    <input id="champsmail" type="text" />
    <input type="button" onclick="validmail()" value="verfier" />
    </body>
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Février 2009
    Messages
    21
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 21
    Par défaut
    je te remercie pour la fonction, mais mon formulaire et déja accroché à une fonction qui justement me permet de vérifier tous les champs de celui ci.
    il me reste juste à régler la gestion du mail. je n'impose pas le remplissage du champ mail mais je veux vérifié sa saisie lorsqu'on le remplit.
    est ce que tu crois que je peux l'implanter dans ma fonction ??

    Merci.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [JS pour formulaire pdf] - Validation champ E-mail
    Par Alexina dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 01/06/2014, 10h01
  2. onsubmit pour tester si champs formulaire vides
    Par Xeuch dans le forum Général JavaScript
    Réponses: 12
    Dernier message: 26/02/2013, 15h30
  3. Formulaire mail, contrôle de champs en Javascript
    Par id1311 dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 02/04/2012, 17h09
  4. [Mail] Tester un formulaire d'envoi de mail en local!
    Par Madzeus dans le forum Langage
    Réponses: 4
    Dernier message: 12/05/2008, 14h17
  5. Comment tester une adresse mail ?
    Par jackop dans le forum Langage
    Réponses: 5
    Dernier message: 08/09/2005, 16h19

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo