Probleme de recopie de champs

Probleme de recopie de champs - HTML/CSS - Programmation

Marsh Posté le 01-03-2004 à 11:54:55    

Bonjour je voudrais savoir comment faire pour recopiez des champs cree dynamiquememt, je m'explique :
 
Dans un formulaire j'ai un certain nombre de champs qui sont aleatoire c'est a dire que certain  peuvent parfois etre present et parfois non .
 
Je voudrais recopier la valeur des libelles dans les inputs correspondant via un bouton. Mais je en sais vraiment pas comment m'y prendre ...
 
voici mon code  
 

Code :
  1. <HTML>
  2.   <HEAD>
  3.   </HEAD>
  4.   <BODY>
  5.     <FORM action="" name="MainForm" method="post">
  6.       <BR>
  7.      
  8.       <TABLE border="0" cellspacing="0" cellpadding="2" width="100%">
  9.         <TR>
  10.           <TD valign="middle" nowrap="">
  11.             <B>TEXT 1  :</B>
  12.           </TD>
  13.           <TD valign="middle" style="padding-left: 10px;width:100%">
  14.             <INPUT type="Text" class="clSAYS" name="Value1" style="width:75%;" value="">
  15.           </TD>
  16.         </TR>
  17.         <TR>
  18.           <TD valign="middle" nowrap="">
  19.             <B>TEXT 2  :</B>
  20.           </TD>
  21.           <TD valign="middle" style="padding-left: 10px;width:100%">
  22.             <INPUT type="Text" class="clSAYS" name="Value2" style="width:75%;" value="">
  23.           </TD>
  24.         </TR>
  25.         <TR>
  26.           <TD valign="middle" nowrap="">
  27.             <B>TEXT 3  :</B>
  28.           </TD>
  29.           <TD valign="middle" style="padding-left: 10px;width:100%">
  30.             <INPUT type="Text" class="clSAYS" name="Value3" style="width:75%;" value="">
  31.           </TD>
  32.         </TR>
  33.         <TR>
  34.           <TD valign="middle" nowrap="">
  35.             <B>TEXT 4  :</B>
  36.           </TD>
  37.           <TD valign="middle" style="padding-left: 10px;width:100%">
  38.             <INPUT type="Text" class="clSAYS" name="Value4" style="width:75%;" value="">
  39.           </TD>
  40.         </TR>
  41.         <TR>
  42.           <TD valign="middle" nowrap="">
  43.             <B>TEXT 5  :</B>
  44.           </TD>
  45.           <TD valign="middle" style="padding-left: 10px;width:100%">
  46.             <INPUT type="Text" class="clSAYS" name="Value5" style="width:75%;" value="">
  47.           </TD>
  48.         </TR>
  49.         <TR>
  50.           <TD valign="middle" nowrap="">
  51.             <B>TEXT 6  :</B>
  52.           </TD>
  53.           <TD valign="middle" style="padding-left: 10px;width:100%">
  54.             <INPUT type="Text" class="clSAYS" name="Value6" style="width:75%;" value="">
  55.           </TD>
  56.         </TR>
  57.         <TR>
  58.           <TD valign="middle" nowrap="">
  59.             <B>TEXT 7  :</B>
  60.           </TD>
  61.           <TD valign="middle" style="padding-left: 10px;width:100%">
  62.             <INPUT type="Text" class="clSAYS" name="Value7" style="width:75%;" value="">
  63.           </TD>
  64.         </TR>
  65.         <TR>
  66.           <TD valign="middle" nowrap="">
  67.             <B>TEXT 8  :</B>
  68.           </TD>
  69.           <TD valign="middle" style="padding-left: 10px;width:100%">
  70.             <INPUT type="Text" class="clSAYS" name="Value8" style="width:75%;" value="">
  71.           </TD>
  72.         </TR>
  73.         <TR>
  74.           <TD valign="middle" nowrap="">
  75.             <B>TEXT 9  :</B>
  76.           </TD>
  77.           <TD valign="middle" style="padding-left: 10px;width:100%">
  78.             <INPUT type="Text" class="clSAYS" name="Value9" style="width:75%;" value="">
  79.           </TD>
  80.         </TR>
  81.         <TR>
  82.           <TD valign="middle" nowrap="">
  83.             <B>TEXT 10  :</B>
  84.           </TD>
  85.           <TD valign="middle" style="padding-left: 10px;width:100%">
  86.             <INPUT type="Text" class="clSAYS" name="Value10" style="width:75%;" value="">
  87.           </TD>
  88.         </TR>
  89.         <TR>
  90.           <TD valign="middle" nowrap="">
  91.             <B>TEXT 11  :</B>
  92.           </TD>
  93.           <TD valign="middle" style="padding-left: 10px;width:100%">
  94.             <INPUT type="Text" class="clSAYS" name="Value11" style="width:75%;" value="">
  95.           </TD>
  96.         </TR>
  97.       </TABLE>
  98.       <BR>
  99.       <BR>
  100.       <TABLE cellpadding="0" border="0" align="center" cellspacing="0">
  101.         <TR>
  102.           <TD nowrap="">
  103.             <INPUT type="button" value="Recopier">
  104.           </TD>       
  105.           <TD nowrap="">
  106.             <INPUT type="submit">
  107.           </TD>
  108.         </TR>
  109.       </TABLE>
  110.     </FORM>
  111.    
  112.  
  113.   </BODY>
  114. </HTML>


 
Merci d'avance je pense que je vais devoir utiliser de id ? mais je ne sais vraiment pas comment faire ....
 

Reply

Marsh Posté le 01-03-2004 à 11:54:55   

Reply

Marsh Posté le 01-03-2004 à 12:49:55    

Oui effectivement tu dois jouer avec les id.
Je te conseille de metre un span par libelle que tu veux modifie. Span avec id biensur.
 
Ensuite tu n'as plus qu'a faire un "document.getElementById('idduspanvoulu')", avec ca tu obtiens l'element voulu, ensuite grace a innerHTML tu pourras changer le contenu.

Reply

Marsh Posté le 03-03-2004 à 08:31:25    

Cerel a écrit :

Oui effectivement tu dois jouer avec les id.
Je te conseille de metre un span par libelle que tu veux modifie. Span avec id biensur.
 
Ensuite tu n'as plus qu'a faire un "document.getElementById('idduspanvoulu')", avec ca tu obtiens l'element voulu, ensuite grace a innerHTML tu pourras changer le contenu.


 
J'ai rien compris tu n'aurais pas un exemple ?

Reply

Marsh Posté le 03-03-2004 à 13:49:38    

En fait je crois que j'ai pas bien compris ton probleme.
 
Quand tu dis que le nombre de champs est aleatoire, je veux bien, mais c'est qui qui te donne ces champs ? Je veux dire, tu utilises un langage de script cote serveur, ou tu edites la page html a chaque fois pour ajouter ou enlever les champs ?
 
Ensuite quand tu dis que tu veux recopier la valeur des libelles dans les input correspondants, tu veux recopier le texte du libelle dans l'input ?  
Pourquoi ne pas utiliser la propriete "value" des inputs ...
 
Bref, il faudrait que l'on sache comment tu obtiens tes champs aleatoires, et aussi pkoi tu veux copier du texte dans les inputs ...

Reply

Marsh Posté le 05-03-2004 à 09:43:49    

Ok je m'explique en fait je fais une interface web dependante d'une appli tournant sous windows cette appli donne plus ou moins de droit a des utilisateurs qui ont donc plus ou moins droit de voir certain champs ... Donc mon appli va recuperer les droit declarer et afficher les input correspondant a ces droits ...
 
exemple : J'ai declarer 4 champs dans mon appli win j'aurais 4 input du coté web .
 
Maintenat je veux juste faire un bouton qui me permette de remplir ces input avec la valeur du libelle. ces input servent a redefinir un nom pour l'utilisateur en question rempalcer le nom par defaut.
 
exemple :
 
NOM1: INPUT1 (value= vide)      
NOM2: INPUT2
NOM3: INPUT3
NOM4: INPUT4
NOM5: INPUT5
 
je voudrais en cliquant sur le bouton recopier NOM1 dans la Value de l'input et ce pour tous ....
 
recopie mon code plus haut tu comprendra peut etre mieux ...
 
Merci

Reply

Marsh Posté le 05-03-2004 à 12:42:38    

Je vois plus ou moins, mais ce qui m'embete c'est l'histoire des inputs... Si j'ai bien compris c'est ton application qui va "afficher" les inputs, je pense que tu veux dire que ton appli va generer le code html avec le bon nombre d'inputs, alors pkoi ne pas les remplir aussi via cette appli...
 
Un des problemes qui empeche que ce soit "facilement" faisaible c'est de savoir combien de champs tu as en tout. Si tu arrives a le savoir alors c'est plus facile.
La methode pour faire ce que tu veux serais qqch comme ca :

Code :
  1. <script type="text/javascript">
  2. function copier() {
  3.   for (i = 1; i<=max; i++) {
  4.      txt = document.getElementById("text"+i);
  5.      champ = document.getElementById("champ"+i);
  6.      txt.value = champ.innerHTML; // <-- a verifier
  7.   }
  8. }
  9. </script>
  10. <form>...
  11. <div id="champ1">Nom1 :</div> <input type="text" id="text1">
  12. <input type="button" value="copier" onclick="copier();">


 
Bref, tu vois l'idee.
Pour avoir le max tu pourrais dire a ton appli de le fornir, sinon une petite boucle du genre :

Code :
  1. var max = 0;
  2. while(document.getElementById("text"+max+1) {
  3. max++;
  4. }


Evidement les champs doivent se suivre ...

Reply

Sujets relatifs:

Leave a Replay

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