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 :

autorisation de touche


Sujet :

JavaScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    90
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 90
    Par défaut autorisation de touche
    Bonjour a tous,

    Je développe actuellement une application, et dans le cadre de celle-ci je dois bloqué des touche sur certains champs input.
    Tous va bien l'application est en réseau local, et sera utilisez sous IE. Donc le code Javascript pour bloqué les touche marche bien.
    Même un peu trop, les points ou virgules ne sont pas autorisés par le 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
     
    <script type='text/javascript'>
    function chiffres(event) {
    	// Compatibilité IE / Firefox
    	if(!event&&window.event) {
    		event=window.event;
    	}
    	// IE
    	if(event.keyCode < 48 || event.keyCode > 57) {
    		event.returnValue = false;
    		event.cancelBubble = true;
    	}
     
     
    }
    </script>
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <input type="text" name="nbrent" SIZE="2" MAXLENGTH="2" onkeypress="chiffres(event);">
    Donc si je comprend bien le code, a chaque fois qu'une touche est frappés dans le champs, le "keycode" est reçus et si celui-ci est inférieur a 48 ou supérieur a 57, la fonction empêche cette touche.
    Le problème est le suivant, comment accepter les points et virgules avec ce code . Personnellement je ne vois pas comment faire, c'est bien pour sa que je demande a quelqu'un de plus éclairé que moi de répondre.

    Merci d'avance

  2. #2
    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
    Billets dans le blog
    20
    Par défaut
    Point : keyCode = 46,
    Virgule : keyCode = 44.
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    90
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 90
    Par défaut
    Merci Bovino, j'avais déjà regarder les Keycode en javascript mais je n'avait pas trouver le point et la virgule

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    if(event.keyCode < 44 || event.keyCode > 57) 
    	{
            event.returnValue = false;
            event.cancelBubble = true;
    	}
    Je vais faire comme sa même si après test les "/" sont autorisés. On va se dire que personne ne tapera un /

  4. #4
    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
    Billets dans le blog
    20
    Par défaut
    Sinon :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if((event.keyCode < 48 || event.keyCode > 57) && event.keyCode != 44 && event.keyCode != 46)
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

  5. #5
    Expert confirmé
    Avatar de Auteur
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    7 660
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 7 660
    Par défaut
    Citation Envoyé par KiranoO
    Je vais faire comme sa même si après test les "/" sont autorisés. On va se dire que personne ne tapera un /
    Moi je le ferai Et tu en auras toujours un qui le fera un jour ou l'autre.

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    90
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 90
    Par défaut

    J'avoue que j'ai du mal a cerner ce code de blocage de touche
    Va faloir que je me penche vraiment plus dessus pour le presenter a mon exam
    en tout cas merci a vous, cela m'aide beaucoup et apporte plus de confort d'utilisation de l'application pour tout le monde. merci

  7. #7
    Membre averti
    Inscrit en
    Août 2007
    Messages
    23
    Détails du profil
    Informations forums :
    Inscription : Août 2007
    Messages : 23
    Par défaut
    Citation Envoyé par KiranoO Voir le message
    Bonjour a tous,

    Je développe actuellement une application, et dans le cadre de celle-ci je dois bloqué des touche sur certains champs input.
    Tous va bien l'application est en réseau local, et sera utilisez sous IE. Donc le code Javascript pour bloqué les touche marche bien.
    Même un peu trop, les points ou virgules ne sont pas autorisés par le 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
     
    <script type='text/javascript'>
    function chiffres(event) {
    	// Compatibilité IE / Firefox
    	if(!event&&window.event) {
    		event=window.event;
    	}
    	// IE
    	if(event.keyCode < 48 || event.keyCode > 57) {
    		event.returnValue = false;
    		event.cancelBubble = true;
    	}
     
     
    }
    </script>
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <input type="text" name="nbrent" SIZE="2" MAXLENGTH="2" onkeypress="chiffres(event);">
    Donc si je comprend bien le code, a chaque fois qu'une touche est frappés dans le champs, le "keycode" est reçus et si celui-ci est inférieur a 48 ou supérieur a 57, la fonction empêche cette touche.
    Le problème est le suivant, comment accepter les points et virgules avec ce code . Personnellement je ne vois pas comment faire, c'est bien pour sa que je demande a quelqu'un de plus éclairé que moi de répondre.

    Merci d'avance
    ce code ne marche pas avec Firefox

  8. #8
    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
    Billets dans le blog
    20
    Par défaut
    Normal, returnValue et cancelBubble sont des propriétés IE !
    Pour FF, il faut passer par preventDefault() et stopPropagation().
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

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

Discussions similaires

  1. Réponses: 11
    Dernier message: 09/06/2010, 12h47
  2. Réponses: 2
    Dernier message: 12/12/2009, 17h37
  3. frm-41009 touche de fonction non autorisée
    Par lifeisgood dans le forum Forms
    Réponses: 2
    Dernier message: 14/03/2007, 09h44
  4. [VB6] Touche impr écran
    Par SpaceFrog dans le forum VB 6 et antérieur
    Réponses: 6
    Dernier message: 12/11/2002, 07h38
  5. Shortcut avec plusieurs touches
    Par scorpiwolf dans le forum C++Builder
    Réponses: 4
    Dernier message: 06/07/2002, 15h57

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