Incrémentation successive

Incrémentation successive - HTML/CSS - Programmation

Marsh Posté le 07-01-2007 à 19:57:18    

Resalut tout le monde  :hello:  
 
Je suis un peu dans l'embarras (ne maîtrisant pas vraiment js), je m'explique; j'ai réalisé ce code tout simple :
 

Citation :

<input type="text" value="" id="machin" disabled="disabled"><br>
<a href="#" onclick="machin.value='truc 1';">Truc 1</a><br>
<a href="#" onclick="machin.value='truc 2';">Truc 2</a><br>
<a href="#" onclick="machin.value='truc 3';">Truc 3</a><br>
etc.


 
Enfaite ce que j'aimerais c'est un petit script qui fasse en sorte qu'il soit possible de cliquer sur plusieurs liens, et qu'ils s'ajoutent succéssivement (de sorte à ce que si l'utilisateur clique sur Truc 1, Truc 2 et Truc 3 le input affiche truc 1, truc 2, truc 3
 
Voilà !! En vous remerciant ;)

Reply

Marsh Posté le 07-01-2007 à 19:57:18   

Reply

Marsh Posté le 07-01-2007 à 22:43:38    

Je mettrais peut-être tout simplement 3 images, associées chacune à une fonction en onclick. Cette fonction récupère l'id de l'image, et ajoute le nom associé dans le champ du input.
Qu'en pensez-vous ?

Reply

Marsh Posté le 07-01-2007 à 23:54:08    

Pourquoi des images :o

 

pour notre ami le mieux serait de passer par une fonction :

Code :
  1. <script type="text/javascript">
  2. function changeTheValue(value) {
  3.   document.getElementById("machin" ).value = value;
  4. }
  5. </script>
  6. ton code HTML :
  7. <input type="text" value="" id="machin" disabled="disabled"><br>
  8. <a href="#" onclick="changeTheValue('truc 1');return false">Truc 1</a><br>
  9. <a href="#" onclick="changeTheValue('truc 2');return false">Truc 2</a><br>
  10. <a href="#" onclick="changeTheValue('truc 3');return false">Truc 3</a><br>

Message cité 1 fois
Message édité par gatsu35 le 08-01-2007 à 00:22:43
Reply

Marsh Posté le 08-01-2007 à 00:17:47    

Je disais des images, mais ça peut être n'importe qu'elle autre élément. Ca évite d'utiliser une balise de lien pour rien.
 
Un truc comme :

Code :
  1. <script type="text/javascript">
  2.      function changeTheValue(valeur) {
  3.           document.getElementById("machin" ).value = document.getElementById("machin" ).value+valeur;
  4.      }
  5. </script>
  6. ton code HTML :
  7. <input type="text" value="" id="machin" disabled="disabled"><br>
  8. <p onclick="changeTheValue=('truc 1')">Truc 1</p><br>
  9. <p onclick="changeTheValue=('truc 2')">Truc 2</p><br>
  10. <p onclick="changeTheValue=('truc 3')">Truc 3</p><br>

Reply

Marsh Posté le 08-01-2007 à 00:21:36    

gatsu35 a écrit :

Pourquoi des images :o
 
pour notre ami le mieux serait de passer par une fonction :  

Code :
  1. <script type="text/javascript">
  2. function changeTheValue(value) {
  3.   document.getElementById("machin" ).value = value;
  4. }
  5. </script>
  6. ton code HTML :
  7. <input type="text" value="" id="machin" disabled="disabled"><br>
  8. <a href="#" onclick="changeTheValue=('truc 1');return false">Truc 1</a><br>
  9. <a href="#" onclick="changeTheValue=('truc 2');return false">Truc 2</a><br>
  10. <a href="#" onclick="changeTheValue('truc 3');return false">Truc 3</a><br>



 
merci beaucoup :D je vais voir ça :)

Reply

Marsh Posté le 08-01-2007 à 00:28:35    

bepimaco a écrit :

Je disais des images, mais ça peut être n'importe qu'elle autre élément. Ca évite d'utiliser une balise de lien pour rien.
 
Un truc comme :

Code :
  1. <script type="text/javascript">
  2.      function changeTheValue(valeur) {
  3.           document.getElementById("machin" ).value = document.getElementById("machin" ).value+valeur;
  4.      }
  5. </script>
  6. ton code HTML :
  7. <input type="text" value="" id="machin" disabled="disabled"><br>
  8. <p onclick="changeTheValue=('truc 1')">Truc 1</p><br>
  9. <p onclick="changeTheValue=('truc 2')">Truc 2</p><br>
  10. <p onclick="changeTheValue=('truc 3')">Truc 3</p><br>



 
ça marche niquel, par contre le résultat donne truc1truc2truc3, comment puis mettre une virgule entre chaque valeur ?
 
merci à vous en tout cas !

Reply

Marsh Posté le 08-01-2007 à 01:11:05    

document.getElementById("machin" ).value = document.getElementById("machin" ).value+', '+valeur;

Reply

Marsh Posté le 08-01-2007 à 01:11:59    

Code :
  1. if (document.getElementById("machin" ).value == "" )
  2.      document.getElementById("machin" ).value =  valeur;
  3. else document.getElementById("machin" ).value +=  document.getElementById("machin" ).value+', '+valeur;


Message édité par bepimaco le 08-01-2007 à 01:15:34
Reply

Marsh Posté le 08-01-2007 à 01:26:54    

Il y a un += ou un doc.getElment.value de trop ;)

Reply

Marsh Posté le 08-01-2007 à 07:12:20    

je vous remercie ça marche :)

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed