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 :

Validation d'un téléphone


Sujet :

JavaScript

  1. #1
    Nouveau Candidat au Club
    Homme Profil pro
    Consultant communication & réseaux
    Inscrit en
    Novembre 2012
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Consultant communication & réseaux
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Novembre 2012
    Messages : 1
    Points : 1
    Points
    1
    Par défaut Validation d'un téléphone
    Salut,

    Je souhaite pouvoir valider un numéro de téléphone ayant ce format : xxx xxx xxxx par exemple 418 512 4545

    Plus spécialement, je souhaite pouvoir donner le choix aux utilisateurs c'est-à-dire que la personne pourra saisir le numéro soit :

    418 512 4545 ou 4185124545 ou 418-512-4545

    Les tirets doivent être ajoutés, peu importe le format saisi parmi les 3 autorisés ci-dessus (l’expression régulière doit pouvoir valider ces 3 formats).

    Voici le code que j’utilise, pour l’expression régulière, je voudrais donc que l’utilisateur puisse saisir 3 chiffres puis (et c’est là que je bloque) soit un espace, un tiret ou rien.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    var Telephone = /^([0-9]{3}[ .-]) ?([0-9]{3}[ .-]) ?([0-9]{4})$/;
    Ensuite, je voudrais que les tirets soient ajoutés automatiquement si besoin :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    if (Telephone.test(telephone.value))
    {
         telephone.value = RegExp.$1 + "-" + RegExp.$2 + "-" + RegExp.$3;
    }
    Si quelqu’un peut me filer un coup de main, ça serait super.

    Merci

  2. #2
    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 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    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 640
    Points : 66 665
    Points
    66 665
    Billets dans le blog
    1
    Par défaut
    un test pour le format suivi
    suivi d'un replace (plus gourmand)
    ou de l'exploitation du RegExp matché
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    num=["41.8 512 4545","4185124545","418-512-4545"]
     
    for(i=0;i<3;i++){
    if(num[i].match(/^(([0-9]{3})[ -]?)(([0-9]{3})[ -]?)([0-9]{4})$/)){
    	//alert(num[i].replace(/(([0-9]{3})[ -]?)(([0-9]{3})[ -]?)([0-9]{4})/,"$2-$4-$5"))
    	alert(RegExp.$2+'-'+RegExp.$4+"-"+RegExp.$5)
    	}
     
    else { alert( num[i]+" n'est pas au bon format") }
    }

  3. #3
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Points : 91 220
    Points
    91 220
    Billets dans le blog
    20
    Par défaut
    Spaffy, inutile de capturer les éléments dont tu ne te sers pas
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    if(num[i].match(/^(?:([0-9]{3})[ -]?)(?:([0-9]{3})[ -]?)([0-9]{4})$/)){
    	//alert(num[i].replace(/(([0-9]{3})[ -]?)(([0-9]{3})[ -]?)([0-9]{4})/,"$2-$4-$5"))
    	alert(RegExp.$1+'-'+RegExp.$2+"-"+RegExp.$3)
    }

Discussions similaires

  1. [ZF 1.11] Validation numéro de téléphone
    Par CinePhil dans le forum Zend_Form
    Réponses: 8
    Dernier message: 06/11/2012, 14h24
  2. Valider un téléphone à 10 chiffres
    Par DevServlet dans le forum Langage
    Réponses: 4
    Dernier message: 30/09/2009, 12h23
  3. validation numéro de téléphone
    Par foxbille dans le forum Cobol
    Réponses: 2
    Dernier message: 22/07/2008, 13h40
  4. [POO] validation des # de téléphone d'un formulaire généré en PHP
    Par goldor dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 17/04/2008, 22h16
  5. [PHP-JS] Validation de numéro de téléphone
    Par Dsphinx dans le forum Langage
    Réponses: 7
    Dernier message: 22/11/2006, 09h48

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