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 :

Autoriser la saisie des virgules dans une zone de texte


Sujet :

JavaScript

  1. #1
    Membre actif Avatar de griese
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    646
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Juin 2006
    Messages : 646
    Points : 281
    Points
    281
    Par défaut Autoriser la saisie des virgules dans une zone de texte
    Bonjour à tous,
    Me voilà avec un autre souci javascript. Dans un formulaire, il y a une zone de texte dans laquelle je voudrais autoriser simplement la saisie de chiffres ou de virgules (pour les nombres décimaux ). J'ai déjà une fonction qui me permet d'obliger la saisie de chiffre, la voici :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    function chiffres(event) {
    	if(!event&&window.event) {
    		event=window.event;
    	}
    	if(event.keyCode < 48 || event.keyCode > 57) {
    		event.returnValue = false;
    		event.cancelBubble = true;
    	}
    }
    Donc ma question est la suivante, que rajouter dans cette fonction pour que l'on puisse aussi saisir les virgules ?
    Merci pour votre aide
    (\ _ /)
    (='.'=) Voici Lapinou. Aidez le à conquérir le monde
    (")-(") en le reproduisant.

    http://mosfootball.over-blog.com

  2. #2
    Membre éprouvé Avatar de Herode
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2005
    Messages
    825
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Savoie (Rhône Alpes)

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

    Informations forums :
    Inscription : Mars 2005
    Messages : 825
    Points : 933
    Points
    933
    Par défaut
    Autoriser event.keyCode == 188.
    Mais ça ne me paraît pas très robuste. L'utilisateur peut aussi entrer des points (code pour le "." : 110 au pavé numérique, ou shift + 190 sinon), des espaces, il ne faut pas autoriser plus d'un séparateur décimal, etc...

  3. #3
    Membre actif Avatar de griese
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    646
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Juin 2006
    Messages : 646
    Points : 281
    Points
    281
    Par défaut
    Ca me va très bien comme ça. Du moment que je puisse saisir un séparateur décimal, c'est le principal.
    Merci à toi
    (\ _ /)
    (='.'=) Voici Lapinou. Aidez le à conquérir le monde
    (")-(") en le reproduisant.

    http://mosfootball.over-blog.com

  4. #4
    Membre actif Avatar de griese
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    646
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Juin 2006
    Messages : 646
    Points : 281
    Points
    281
    Par défaut
    Bon je re post sur ce topic, car je ne sais pas pourquoi, ca ne marche plus. J'avais modifié la fonction comme ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    function chiffres(event) {
    	if(!event&&window.event) {
    		event=window.event;
    	}
    	if(event.keyCode < 48 || event.keyCode > 57 or event.KeyCode==188) {
    		event.returnValue = false;
    		event.cancelBubble = true;
    	}
    }
    Avec ça, tous les caractères sont utilisés. Quelqu'un peut il m'aider ?
    (\ _ /)
    (='.'=) Voici Lapinou. Aidez le à conquérir le monde
    (")-(") en le reproduisant.

    http://mosfootball.over-blog.com

  5. #5
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    49
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 49
    Points : 38
    Points
    38
    Par défaut
    Citation Envoyé par griese
    Bon je re post sur ce topic, car je ne sais pas pourquoi, ca ne marche plus. J'avais modifié la fonction comme ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    function chiffres(event) {
    	if(!event&&window.event) {
    		event=window.event;
    	}
    	if(event.keyCode < 48 || event.keyCode > 57 or event.KeyCode==188) {
    		event.returnValue = false;
    		event.cancelBubble = true;
    	}
    }
    Peut-etre en ecrivant || au lieu de or ...

  6. #6
    Membre actif Avatar de griese
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    646
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Juin 2006
    Messages : 646
    Points : 281
    Points
    281
    Par défaut
    C'est pas, en remplacant or par ||, il n'autorise que les chiffres, merci quand même.
    (\ _ /)
    (='.'=) Voici Lapinou. Aidez le à conquérir le monde
    (")-(") en le reproduisant.

    http://mosfootball.over-blog.com

  7. #7
    Membre éprouvé Avatar de Herode
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2005
    Messages
    825
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Savoie (Rhône Alpes)

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

    Informations forums :
    Inscription : Mars 2005
    Messages : 825
    Points : 933
    Points
    933
    Par défaut
    Attention, javascipt est sensible à la casse (dans tous les sens du terme ) :
    et non

  8. #8
    Membre actif Avatar de griese
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    646
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Juin 2006
    Messages : 646
    Points : 281
    Points
    281
    Par défaut
    J'ai remplacé le K par un k, mais ça ni change rien, cela ne marche toujours pas. Merci quanf meme.
    (\ _ /)
    (='.'=) Voici Lapinou. Aidez le à conquérir le monde
    (")-(") en le reproduisant.

    http://mosfootball.over-blog.com

  9. #9
    Membre éprouvé Avatar de Herode
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2005
    Messages
    825
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Savoie (Rhône Alpes)

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

    Informations forums :
    Inscription : Mars 2005
    Messages : 825
    Points : 933
    Points
    933
    Par défaut
    Je n'avais pas fait attention à ton test... Il est erroné, c'est pour cela que ça ne marche pas. Le if doit capturer les événements non autorisés, si je suis bien. Donc :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if(event.keyCode < 48 || event.keyCode > 57 && event.keyCode != 188)

  10. #10
    Membre actif Avatar de griese
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    646
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Juin 2006
    Messages : 646
    Points : 281
    Points
    281
    Par défaut
    Non , ca ne marche pas non plus. Avec ta solution, il n'autorise que les chiffres. Attendez, quelqu'un pourrait-il me confirmer que le numéro 188 correspond bien à la virgule. Merci de votre aide
    (\ _ /)
    (='.'=) Voici Lapinou. Aidez le à conquérir le monde
    (")-(") en le reproduisant.

    http://mosfootball.over-blog.com

Discussions similaires

  1. Ecrire avec des étoiles dans une zone de texte.
    Par ApocKalipsS dans le forum Langage
    Réponses: 2
    Dernier message: 07/07/2009, 16h08
  2. Réponses: 2
    Dernier message: 03/07/2009, 15h26
  3. Saisir que des lettres dans une zone de texte
    Par parab dans le forum IHM
    Réponses: 2
    Dernier message: 03/12/2008, 14h52
  4. Empecher d'ecrire des espaces dans une zone de texte ?
    Par insane_80 dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 02/03/2007, 18h32
  5. interdire virgule, .. dans une zone de texte
    Par EE dans le forum Access
    Réponses: 4
    Dernier message: 05/01/2006, 09h11

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