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 :

restrictions pour validation de champ


Sujet :

JavaScript

  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Février 2011
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Février 2011
    Messages : 10
    Par défaut restrictions pour validation de champ
    bonjour j'aimerai ajouter quelques restrictions a ma fonction qui valide un champ "email"...

    1. l'adresse email doit commencer par a-zA-Z0-9._-
    2. au mois 2 caracteres apres le @
    3. entre 2 et 4 caracteres apres le dernier point (.com ou .net .org...)

    voici le code de ma fonction jusqua maintenant.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    function valemail() {
     
    var str1;
    str1 = document.getElementById("email").value;
    var acom = str1.indexOf('@')
    if(acom == -1){
    alert("Email Invalide.")
    document.getElementById("email").style.backgroundColor = "#fba";
    }else{
    alert("Email Valide")
    document.getElementById("email").style.backgroundColor = "";
    }
    }

  2. #2
    Membre chevronné Avatar de nadox
    Homme Profil pro
    Développeur
    Inscrit en
    Février 2010
    Messages
    360
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : Développeur
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Février 2010
    Messages : 360
    Par défaut
    Bonjour,
    Utilise les expressions régulières :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    function validMail(str)
    {
    var reg = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.]){2,}\.([A-Za-z]{2,4})$/;
    var valid = reg.test(str);
    if(!valid){
        alert("Email Invalide.")
    } else {
        alert("Email Valide")
    }
    }

  3. #3
    Membre habitué
    Profil pro
    Inscrit en
    Février 2011
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Février 2011
    Messages : 10
    Par défaut
    Citation Envoyé par nadox Voir le message
    Bonjour,
    Utilise les expressions régulières :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    function validMail(str)
    {
    var reg = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.]){2,}\.([A-Za-z]{2,4})$/;
    var valid = reg.test(str);
    if(!valid){
        alert("Email Invalide.")
    } else {
        alert("Email Valide")
    }
    }
    merci pour la partie de code que je n'avais pas mais je crois qu'il manque qqch ou il y a qqch de trop car quand je rentre "abc@hotmail.com" ca ne fonctionne pas et normalement ca devrait fonctionner...

  4. #4
    Membre chevronné Avatar de nadox
    Homme Profil pro
    Développeur
    Inscrit en
    Février 2010
    Messages
    360
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : Développeur
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Février 2010
    Messages : 360
    Par défaut
    Ma fonction n'est pas utilisable dans ton cas ! c'est seulement un exemple ! Il faut l'adapter à ton code !

    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
    22
    23
    24
    25
    26
    27
    28
    29
     
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
    <head>
    <script type="text/javascript">
    function valemail() {
    	var reg = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.]){2,}\.([A-Za-z]{2,4})$/;
    	var str1;
    		str1 = document.getElementById("email").value;
    	var valid = reg.test(str1);
    	if(!valid){
    		alert("Email Invalide.")
    		document.getElementById("email").style.backgroundColor = "#fba";
    		return false;
    	}else{
    		alert("Email Valide")
    		document.getElementById("email").style.backgroundColor = "";
    		return true;
    	}
    }
    </script>
    </head>
    <body>
    <form action="#" method="POST" onsubmit="return valemail();">
    <input type="text" name="email" id="email"/>
    <input type="submit" value="tester"/>
    </form>
    </body>
    </html>

  5. #5
    Membre habitué
    Profil pro
    Inscrit en
    Février 2011
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Février 2011
    Messages : 10
    Par défaut
    Citation Envoyé par nadox Voir le message
    Ma fonction n'est pas utilisable dans ton cas ! c'est seulement un exemple ! Il faut l'adapter à ton code !

    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
    22
    23
    24
    25
    26
    27
    28
    29
     
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
    <head>
    <script type="text/javascript">
    function valemail() {
    	var reg = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.]){2,}\.([A-Za-z]{2,4})$/;
    	var str1;
    		str1 = document.getElementById("email").value;
    	var valid = reg.test(str1);
    	if(!valid){
    		alert("Email Invalide.")
    		document.getElementById("email").style.backgroundColor = "#fba";
    		return false;
    	}else{
    		alert("Email Valide")
    		document.getElementById("email").style.backgroundColor = "";
    		return true;
    	}
    }
    </script>
    </head>
    <body>
    <form action="#" method="POST" onsubmit="return valemail();">
    <input type="text" name="email" id="email"/>
    <input type="submit" value="tester"/>
    </form>
    </body>
    </html>
    merci. Est ce que c'est possible de faire une fonction qui verifie si toutes mes autres fonctions que j'utilise pour valider mes champs retourne vrai ?? c'est possible d'appeler une fonction dans une fonction ???

  6. #6
    Membre chevronné Avatar de nadox
    Homme Profil pro
    Développeur
    Inscrit en
    Février 2010
    Messages
    360
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : Développeur
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Février 2010
    Messages : 360
    Par défaut
    oui.
    Code javascript : 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
     
    function verif1(){
        return (fonction1() && fonction2()); //retournera true;
    }
    function verif2(){
        return (fonction2() && fonction3()); //retournera false;
    }
    function fonction1(){
        return true;
    }
    function fonction2(){
        return true;
    }
    function fonction3(){
        return false;
    }
    alert("verif 1 : "+verif1());  //retournera true (true && true);
    alert("verif 2 : "+verif2());  //retournera false (true && false);

  7. #7
    Membre habitué
    Profil pro
    Inscrit en
    Février 2011
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Février 2011
    Messages : 10
    Par défaut
    Citation Envoyé par nadox Voir le message
    oui.
    Code javascript : 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
     
    function verif1(){
        return (fonction1() && fonction2()); //retournera true;
    }
    function verif2(){
        return (fonction2() && fonction3()); //retournera false;
    }
    function fonction1(){
        return true;
    }
    function fonction2(){
        return true;
    }
    function fonction3(){
        return false;
    }
    alert("verif 1 : "+verif1());  //retournera true (true && true);
    alert("verif 2 : "+verif2());  //retournera false (true && false);
    comment traduire "si la fonction 1 et la fonction 2 retourne vrai"...

  8. #8
    Membre chevronné Avatar de nadox
    Homme Profil pro
    Développeur
    Inscrit en
    Février 2010
    Messages
    360
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : Développeur
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Février 2010
    Messages : 360
    Par défaut
    Code javascript : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    if(function1() && function2()) {
    // code si les deux fonctions retourne vrai
    } else {
    // code si une des deux fonctions (ou les deux) retourne false
    }

  9. #9
    Membre habitué
    Profil pro
    Inscrit en
    Février 2011
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Février 2011
    Messages : 10
    Par défaut
    Citation Envoyé par nadox Voir le message
    Code javascript : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    if(function1() && function2()) {
    // code si les deux fonctions retourne vrai
    } else {
    // code si une des deux fonctions (ou les deux) retourne false
    }
    merci beaucoup

  10. #10
    Membre chevronné Avatar de nadox
    Homme Profil pro
    Développeur
    Inscrit en
    Février 2010
    Messages
    360
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : Développeur
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Février 2010
    Messages : 360
    Par défaut
    On peut même en avoir autant que nécessaire
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    if(function1() && function2() && function3() && function4() && function5()) {
    // code si toutes les fonctions retourne vrai
    } else {
    // code si au moins une des fonctions retourne false
    }

Discussions similaires

  1. pluging jquery pour validation de champs obligatoires
    Par Amelie MOREAU dans le forum jQuery
    Réponses: 3
    Dernier message: 08/03/2013, 15h01
  2. [JAXB] Marshaller un champ vide pour validation XSD
    Par Shiftane dans le forum Format d'échange (XML, JSON...)
    Réponses: 3
    Dernier message: 22/02/2012, 13h34
  3. [AC-2007] Comment faire pour valider la saisie d'un champs automatiquement ?
    Par tibofo dans le forum VBA Access
    Réponses: 5
    Dernier message: 30/10/2011, 14h45
  4. Expression reguliére pour valider un champ
    Par Jacobian dans le forum ActionScript 3
    Réponses: 13
    Dernier message: 14/03/2011, 16h00
  5. Fonction générique pour valider les champs d'un formulaire quelconque
    Par dark_vidor dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 26/01/2009, 01h34

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