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 :

Masque de saisie pour zone de text


Sujet :

JavaScript

  1. #1
    Membre régulier Avatar de achos
    Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2006
    Messages
    147
    Détails du profil
    Informations personnelles :
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Décembre 2006
    Messages : 147
    Points : 84
    Points
    84
    Par défaut Masque de saisie pour zone de text
    Bonjour tout le monde,
    J'ai un formulaire que je doit contrôler en utilisant des masque de saisie;
    Pour les champs numerique j'ai réalisé le masque c simple juste :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if (code <48 || code > 57 )
    mais j'ai un champs Alphanumérique (N° de patente) de ce type : AA###A##
    A => lettre
    # => numero
    pourriez vous m'aider pour réaliser un masque de saisie pour cette zone de texte
    et merci d'avance.

  2. #2
    Expert éminent sénior
    Avatar de Auteur
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    7 649
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 7 649
    Points : 11 138
    Points
    11 138
    Par défaut
    bonjour,

    avec des expressions régulières :
    Code jaavscript : 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
    30
    31
    32
     
    <html>
    <head>
    <title></title>
     
    <script type="text/javascript">
    <!--
    function testSaisie()
    {
     var exp = new RegExp("^[a-zA-z]{2}[0-9]{3}[a-zA-z]{1}[0-9]{2}$","gi");
     var data = document.getElementById("idInput").value;
     
     if (data.match(exp))
        alert("ok");
     else
         alert("raté"); 
    }
     
    //-->
    </script>
     
    </head>
     
    <body>
     
    <input id="idInput" size="10" maxlength="8" />
     
    <input type="button" value="Bouton" onclick="testSaisie()" />
     
    </body>
     
    </html>

  3. #3
    Membre régulier Avatar de achos
    Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2006
    Messages
    147
    Détails du profil
    Informations personnelles :
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Décembre 2006
    Messages : 147
    Points : 84
    Points
    84
    Par défaut
    Salut,
    Marci bien pour l'exemple avec les regex.
    ca marche trés bien mais pour mon pb je veux tester la valeur du champ au moment de la saisie.
    c-à-d pour le mask AA###A## : pour la premiere fois lorsque je tape un N° c ne marche pas, c'est sulement les caractéres alphabéts qui sont autorisé puis au troisième caractére se ne sont que les numéros et ainsi de suite.
    voici mon exemple pour un champ numérique.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    <script language="javascript">
    function valideChiffre(code){
                 if (code <48 || code > 57 ) return 0;
                 return code;
       }
    function test() {
                 window.event.keyCode = valideChiffre(window.event.keyCode);
               } 
    </script>
     
    N° RC:<input type="text" name="n_rc" maxlength="5" onKeyPress="test()">
    Merci

  4. #4
    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 670
    Points
    66 670
    Billets dans le blog
    1
    Par défaut
    au moment de la saisie sur le onkeyup ...

    faudrait un regExp qui determine que la saisie commence par ...
    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 !

  5. #5
    Membre régulier Avatar de achos
    Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2006
    Messages
    147
    Détails du profil
    Informations personnelles :
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Décembre 2006
    Messages : 147
    Points : 84
    Points
    84
    Par défaut
    oui exactement ca sera réaliser par l'evenement OnKeyup mais pour la regex je sait pas comment autorisé ou annuler la saisie des chiffres et des lettre a l'emplacement précis.
    la regex sera de ce type
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    RegExp("^[a-zA-z]{2}[0-9]{3}[a-zA-z]{1}[0-9]{2}$",$_POST['champ']);
    comme a signalé monsieur l'Auteur

  6. #6
    Expert éminent sénior
    Avatar de Auteur
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    7 649
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 7 649
    Points : 11 138
    Points
    11 138
    Par défaut
    Franchement analyser la chaîne au moment de la saisie risque d'ête fastidieux pour l'utilisateur.

  7. #7
    Membre régulier Avatar de achos
    Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2006
    Messages
    147
    Détails du profil
    Informations personnelles :
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Décembre 2006
    Messages : 147
    Points : 84
    Points
    84
    Par défaut
    Merci pour vos réponses, finalement j'ai trouvé une autre manière pour résoudre le pb je vais créer 4 zone de texte l'une à cote de l'autre pour chaque type de caractére et je fais le test pour chaque zone et enfin pour la sauvegare je peux faire la concaténation des 4 valeurs.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    //valeur AA###A##
    <input type='text' name='txt1' value='AA' >
    <input type='text' name='txt2' value='###' >
    <input type='text' name='txt3' value='A' >
    <input type='text' name='txt4' value='##' >
     
    // enfin la concaténation
     
    $ma_valeur = $_POST['txt1'] .$_POST['txt2'] .$_POST['txt3'] .$_POST['txt4']

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

Discussions similaires

  1. [A-02] Masque de saisie pour un champ texte
    Par jenniferIUP dans le forum IHM
    Réponses: 5
    Dernier message: 23/02/2009, 09h40
  2. masque de saisie pour une inputbox ?
    Par tomo0013 dans le forum IHM
    Réponses: 3
    Dernier message: 23/02/2007, 11h28
  3. [RegEx] Masque de saisie pour formulaire
    Par achos dans le forum Langage
    Réponses: 6
    Dernier message: 12/02/2007, 17h04
  4. masque de saisie et zone de liste
    Par noname_971 dans le forum IHM
    Réponses: 2
    Dernier message: 15/02/2006, 15h19
  5. javascript pour zone de text
    Par ridondo dans le forum Général JavaScript
    Réponses: 8
    Dernier message: 15/12/2005, 16h43

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