Partage
  • Partager sur Facebook
  • Partager sur Twitter

Afficher chiffres 3 par 3

    21 juillet 2010 à 15:00:20

    Bonjour, j'ai un formulaire dans lequel on tape un nombre que l'on doit decomposer en 3 par 3. Je m'explique: Je tape par exemple dans mon champ : 35000000 et je veux que lorsque je passe à un autre champ il m'affiche 35 000 000 (en gros le même nombre mais avec des espaces).

    Quelqu'un aurait une idée??
    • Partager sur Facebook
    • Partager sur Twitter
      21 juillet 2010 à 15:13:01

      Malheureusement, javascript ne dispose pas de fonction de formatage, ni de manipulation de chaine aussi évolué que PHP, mais j'ai trouve cette fonction ici : http://www.netlobo.com/number_format_javascript.html

      function numberFormat(nStr){
          var prefix = prefix || '';
          nStr += '';
          x = nStr.split('.');
          x1 = x[0];
          x2 = x.length > 1 ? '.' + x[1] : '';
          var rgx = /(\d+)(\d{3})/;
          while (rgx.test(x1))
              x1 = x1.replace(rgx, '$1' + ' ' + '$2');
          return x1 + x2;
      }
      
      • Partager sur Facebook
      • Partager sur Twitter
        21 juillet 2010 à 15:21:56

        Merci et comment je dois m'y prendre dasn ma jsp pour que cela soit pris en compte lorsque je change de champ?

        <tr>
        <td class="FormEtiquette">Poids</td>

        <td><input id="PoidsChoix" class="Width80" maxlength="16"></td>
        <td>kg</td>
        </tr>
        • Partager sur Facebook
        • Partager sur Twitter
          21 juillet 2010 à 15:44:02

          Merci, mais je n'y arrive tjrs pas....
          • Partager sur Facebook
          • Partager sur Twitter
            21 juillet 2010 à 15:47:14

            Y a pourtant un exemple avec un input dans le lien ;)

            Montre au moins ce que tu as essaye de faire :-°
            • Partager sur Facebook
            • Partager sur Twitter
              21 juillet 2010 à 16:08:04

              Voici ce que j'ai essayé de faire:

              dans mon .js :

              function formatNombre(nStr){
              var champFormate = document.getElementById(nStr).value;
              champFormate += '';
              x = champFormate.split('.');
              x1 = x[0];
              x2 = x.length > 1 ? '.' + x[1] : '';
              var rgx = /(\d+)(\d{3})/;
              while (rgx.test(x1))
              x1 = x1.replace(rgx, '$1' + ' ' + '$2');
              document.getElementById(nStr).value = x1 + x2;
              }

              et dans mon .jsp

              <tr>
              <td class="FormEtiquette">Poids</td>

              <td><input id="PoidsChoix" class="Width80" maxlength="16" onkeyup="nombreFormat('PoidsChoix');></td>
              <td>kg</td>
              </tr>

              j'utilise le onkeyup à la place du onblur...
              Mais je ne pense pas que le pb provienne de la.
              • Partager sur Facebook
              • Partager sur Twitter
                21 juillet 2010 à 16:11:45

                c'est presque bon, il faut juste mettre le bon nom de fonction (formatNombre et pas nombreFormat ;)

                PS : Utilise les balises code quand tu veux mettre du code (icone </>
                • Partager sur Facebook
                • Partager sur Twitter
                  21 juillet 2010 à 16:17:34

                  Lol, je suis bête...

                  Mais un autre probleme est survenu, lorsque je dépasse 4 chiffres il ya des espace partout sauf pour les 3 derniers..

                  exemple : 100000 donne 1 0 0 000
                  • Partager sur Facebook
                  • Partager sur Twitter
                    21 juillet 2010 à 16:19:17

                    Même en utilisant onblur a la place de onkeyup?

                    PS : J'ai pas teste la fonction, mais selon le site elle semble marcher sur une chaine entière, donc le onblur devrait marcher.
                    • Partager sur Facebook
                    • Partager sur Twitter
                      21 juillet 2010 à 16:38:26

                      N'oublie pas de mettre ton sujet en résolu :)
                      • Partager sur Facebook
                      • Partager sur Twitter
                        21 juillet 2010 à 18:16:17

                        J'ai un pb, je n'arrive pas à cliquer sur RESOLU
                        • Partager sur Facebook
                        • Partager sur Twitter

                        Afficher chiffres 3 par 3

                        × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                        × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                        • Editeur
                        • Markdown