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 :

Formulaire et chagement de valeur


Sujet :

JavaScript

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    25
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 25
    Points : 14
    Points
    14
    Par défaut Formulaire et chagement de valeur
    Bonsoir a toute et à tous,

    alors je vous explique mon probleme,
    j'ai un input avec une valeur numerique par defaut
    par exemple 1000

    ensuite j ai deux images !!!
    lorsque je clique sur l'une la valeur du submit incremente de 10
    et l autre decremente de 10
    par contre je ne dois pas pouvoir décrementé si j ai ma valeur par defaut
    j'ai ce probléme la et je n'arrive pas à m'en defaire pouvais vous m'aider s'il vous plait ?

  2. #2
    Inactif  
    Avatar de Kerod
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    11 672
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 11 672
    Points : 20 778
    Points
    20 778
    Par défaut
    Sans code on peut pas grand chose

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    25
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 25
    Points : 14
    Points
    14
    Par défaut
    dans ce cas le voici ^^

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    <input type="text" name="hp" size="6" maxlenght="6" value="1000" disabled> 
    <a href="#" onclick="javascript:more(1000,25,"hp")">+</a>
    1000 étant la valeur dans le input
    25 la valeur d'incrementation
    et hp le nom du champs
    deja essayons pour l'incrementation

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    function more(valeur,augmentation,name)
    {
     
    }
    et la fonction je sais pas justement, je pense juste avoir besoin des trois parametres presenté plus haut

    merci de votre aide

  4. #4
    Inactif  
    Avatar de Kerod
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    11 672
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 11 672
    Points : 20 778
    Points
    20 778
    Par défaut
    Avec ton 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
    17
     
    <input type="text" id="hp" size="6" maxlenght="6" value="1000" disabled>
    <a href="#" onclick="javascript:more(25,'hp')">+</a> 
    <a href="#" onclick="javascript:decrease(25,'hp')">-</a> 
    <script language="javascript">
    var defaut = parseInt(document.getElementById('hp').value);
     
    function more(augmentation,id)
    {
      var val = parseInt(document.getElementById(id).value);
      document.getElementById(id).value = val + augmentation;
    }
    function decrease(moins,id)
    {
      var val = parseInt(document.getElementById(id).value);
      document.getElementById(id).value = (val != defaut)?(val - moins):defaut;
    }
    J'ai retiré la valeur par défaut mais tu peux la rajouter

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    25
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 25
    Points : 14
    Points
    14
    Par défaut
    merci beaucoup je vais tester ^^

  6. #6
    Inactif  
    Avatar de Kerod
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    11 672
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 11 672
    Points : 20 778
    Points
    20 778
    Par défaut
    De rien et je pense que là il est complet le code...Par contre tu peux mettre un if à la place de l'instruction de test que j'ai mis.

    Comme ceci par exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    <a href="#" onclick="javascript:update('+',25,'hp')">+</a> 
    <a href="#" onclick="javascript:update('-',25,'hp')">-</a> 
    <script language="javascript">
    var defaut = parseInt(document.getElementById('hp').value);
    function update(signe,valeur,id)
    {
      var val = parseInt(document.getElementById(id).value);
      if(signe == "+")
      document.getElementById(id).value = val + valeur;
      else if(signe == "-" && val != defaut)
      document.getElementById(id).value = (val - valeur);
    }
    </script>

  7. #7
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    25
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 25
    Points : 14
    Points
    14
    Par défaut
    la derniere est la plus conviviale !!!
    par contre j'ai un soucis avec le moins c est que si ma valeur par defaut est 1000 je ne veux pas descendre en dessous et la dans le code il me le fait !!! je vais regardé comment ce fais ce !!

    merci beaucoup encore une fois

  8. #8
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    25
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 25
    Points : 14
    Points
    14
    Par défaut
    j'ai trouvé pourquoi c est parce que j'avais mis le code dans mon fichier script.js !! en mettant ce code sur ma page ca marche !

  9. #9
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    25
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 25
    Points : 14
    Points
    14
    Par défaut
    voici donc le code final
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
          <input type="text" name="hp" id="hp" size="6" maxlenght="6" value="<?php echo $hp; ?>" disabled>
          <a href="#" onclick="javascript:update('+',25,'hp',<?php echo $hp; ?>)">+</a>
          <a href="#" onclick="javascript:update('-',25,'hp',<?php echo $hp; ?>)">-</a>
    code javascript

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    function update(signe,valeur,id,defaut)
          {
          var val = parseInt(document.getElementById(id).value);
          if(signe == "+")
          document.getElementById(id).value = val + valeur;
          else if(signe == "-" && val != defaut)
          document.getElementById(id).value = (val - valeur);
          }
    merci encore une fois ^^

  10. #10
    Inactif  
    Avatar de Kerod
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    11 672
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 11 672
    Points : 20 778
    Points
    20 778
    Par défaut
    De rien mais la prochaine fois utilises la fonction éditer

  11. #11
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    25
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 25
    Points : 14
    Points
    14
    Par défaut
    j"ai fermé un peu trop tot apparement !!!
    j'ai voulu rajouté une autre chose et bizarrement ca marche pas !

    j'ai un compteur qui me permet de savoir combien de fois je peux faire une incrementation

    j'ai donc rajouté dans le javascript

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
          function update(signe,valeur,id,defaut)
          {
          var val = parseInt(document.getElementById(id).value);
         var points = parseInt(document.getElementById('pointstats').value);
          if(signe == "+" && points >= 0)
          document.getElementById(id).value = val + valeur;
          document.getElementById('pointstats').value = (points - 1);
          else if(signe == "-" && val != defaut)
          document.getElementById(id).value = (val - valeur);
          }
    apparement c est cette ligne la qui bug
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    document.getElementById('pointstats').value = (points - 1);

  12. #12
    Inactif  
    Avatar de Kerod
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    11 672
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 11 672
    Points : 20 778
    Points
    20 778
    Par défaut
    c'est la base de la programmation et ca doit venir obligatoirement de là ...

    ALors lorsqu'un if contient une seule ligne de code on est pas contraint de mettre de { } alors que s'il y a plusieur c'est le contraire donc je te conseille de faire comme ceci pour que ce soit correct :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    function update(signe,valeur,id,defaut)
          {
          var val = parseInt(document.getElementById(id).value);
          var points = parseInt(document.getElementById('pointstats').value);
          if(signe == "+" && points >= 0)
          {
             document.getElementById(id).value = val + valeur;
             document.getElementById('pointstats').value = (points - 1);
          }
          else if(signe == "-" && val != defaut)
          document.getElementById(id).value = (val - valeur);
          }

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

Discussions similaires

  1. Cacher un champs dans un formulaire en gardant sa valeur
    Par gRaNdLeMuRieN dans le forum Langage
    Réponses: 6
    Dernier message: 10/11/2011, 19h52
  2. Réponses: 9
    Dernier message: 20/06/2006, 18h47
  3. Réponses: 11
    Dernier message: 19/06/2006, 13h51
  4. Formulaire continu et maj valeur de champs
    Par Raz0r dans le forum IHM
    Réponses: 7
    Dernier message: 15/06/2006, 15h06
  5. Réponses: 18
    Dernier message: 15/11/2005, 10h13

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