remplissage d'un champ de formulaire

remplissage d'un champ de formulaire - HTML/CSS - Programmation

Marsh Posté le 09-08-2002 à 14:58:22    

:hello:  
alors :
j'ai un formulaire (indemnites) un input (nbr_nuit), une liste (nuit, avec un onchange=mafonction) et un troisième champ (tot1, total des 2 premier champs)
 
dans ma fonction y'a ça :
document.indemnites.tot1.value = document.indemnites.nbr_nuit.value*document.indemnites.nuit.value;
 
et bien sûr, ça marche pô...
 
si je mets :
document.indemnites.tot1.value = 5*10
il me remplis bien mon input tot1...
 
comprend pas... aidez moi  :cry:  


---------------
çà s'est HFR | Music for the Galaxy
Reply

Marsh Posté le 09-08-2002 à 14:58:22   

Reply

Marsh Posté le 09-08-2002 à 16:04:38    

je suis pas sur que t'ais un .value sur une liste.  
il me semble que tu es obligé de récupérer l'index de l'élement choisi et apres accéder aux tableaux des éléments de ta liste...
qq chose comme ca:
 

Code :
  1. // création d'un "pointeur" sur le formulaire  
  2. // pasque j'ai la flemme de tout retaper...
  3. f=document.indemnites;
  4. f.tot1.value = f.nbr_nuit.value * f.nuit.options[f.nuit.selectedIndex].value;


Message édité par JWhy le 09-08-2002 à 16:04:59

---------------
www.alliancefrancophone.org ... Home is where the heart is
Reply

Marsh Posté le 09-08-2002 à 17:11:57    

oui!!!!!!
c'est ça !!!
merçi
 
 
 
mais ça marche pas
http://akaa.free.fr/online/bombom.gif


---------------
çà s'est HFR | Music for the Galaxy
Reply

Marsh Posté le 09-08-2002 à 20:43:37    

Code :
  1. <script language="javascript">
  2. function calcul()
  3. {
  4. document.indemnites.total.value = document.indemnites.nbr_nuits.value * document.indemnites.nuit.options[document.indemnites.nuit.selectedIndex].value;
  5. }
  6. </script>
  7. <form name="indemnites">
  8. Nombre de nuits : <input type="text" name="nbr_nuits" size="3"><br>
  9.  Prix nuit : <select name="nuit" OnChange="javascript:calcul();">
  10.   <option>
  11.  <option value="10">10
  12.  <option value="20">20
  13.  <option value="30">30
  14.  <option value="40">40
  15.  <option value="50>50
  16.  <option value="60">60
  17. </select><br>
  18. TOTAL : <input type="text" name="total" size="6">
  19. </form>


 
Voici un bout de code qui marche
Dis moi si tu as des questions dessus

Reply

Marsh Posté le 09-08-2002 à 20:56:05    

ah...  :)  
j'avais pas mis value=x ds <option> :pt1cable: (patapai  )
 
dankeu
mais je pourrai pas essayer avant lundi  (quel dommage...  :D )


---------------
çà s'est HFR | Music for the Galaxy
Reply

Marsh Posté le 09-08-2002 à 21:47:25    

Schimz a écrit a écrit :

ah...  :)  
j'avais pas mis value=x ds <option> :pt1cable: (patapai  )
 
dankeu
mais je pourrai pas essayer avant lundi  (quel dommage...  :D )




 
tiens moi au courant  :hello:

Reply

Marsh Posté le 09-08-2002 à 23:58:55    

Schimz a écrit a écrit :

ah...  :)  
j'avais pas mis value=x ds <option> :pt1cable: (patapai  )




arf! :D  
c'est sur que ca risque de moins bien marcher ;)


Message édité par JWhy le 09-08-2002 à 23:59:02

---------------
www.alliancefrancophone.org ... Home is where the heart is
Reply

Marsh Posté le 12-08-2002 à 10:01:06    

ça marche
thanxs guys
 
par contre, j'ai un nouveau problème  :lol:  
 
j'ai un input tot3 (somme des inputs tot1 et tot2)
 
f.tot3.value = f.tot1.value + f.tot2.value;
 
si pas ex. tot1 = 20 et tot2 = 70 il me sort 2070 et pas 90.
 
 :heink:  
 
j'ai mis le calcul de tot3 ds une autre fonction mais ça marche toujours pas. si je met tot3 = 10 + 20 ça marche bien, si je met tot3 = tot1 + 20 il m'affiche tot1.20
 
javascript, ça me sort par les yeux.
 
edit : et ça marche trés bien avec *  :pt1cable:


Message édité par Schimz le 12-08-2002 à 10:52:28

---------------
çà s'est HFR | Music for the Galaxy
Reply

Marsh Posté le 12-08-2002 à 14:01:06    

Schimz a écrit a écrit :

ça marche
thanxs guys
 
par contre, j'ai un nouveau problème  :lol:  
 
j'ai un input tot3 (somme des inputs tot1 et tot2)
 
f.tot3.value = f.tot1.value + f.tot2.value;
 
si pas ex. tot1 = 20 et tot2 = 70 il me sort 2070 et pas 90.
 
 :heink:  
 
j'ai mis le calcul de tot3 ds une autre fonction mais ça marche toujours pas. si je met tot3 = 10 + 20 ça marche bien, si je met tot3 = tot1 + 20 il m'affiche tot1.20
 
javascript, ça me sort par les yeux.
 
edit : et ça marche trés bien avec *  :pt1cable:  




 
 
voici une solution :  
 

Code :
  1. <script language="javascript">
  2. function calcul()
  3. {
  4. document.indemnites.total.value = eval(document.indemnites.tot1.value) + eval(document.indemnites.tot2.value);
  5. }
  6. </script>
  7. <form name="indemnites">
  8. total1 : <input type="text" name="tot1" size="3"><br>
  9. total2 : <input type="text" name="tot2" size="3"><br>
  10. TOTAL : <input type="text" name="total" size="6"><br>
  11. <input type="button" OnClick="javascript:calcul();" value="calculer">
  12. </form>

Reply

Marsh Posté le 12-08-2002 à 14:04:21    

le truc en fait c'est qu'il considère les value comme des chaines de caracteres donc il concatène par défaut

Reply

Marsh Posté le 12-08-2002 à 14:04:21   

Reply

Marsh Posté le 12-08-2002 à 14:18:14    

c'est ça merçi  :)  
 
je vais faire un stage JS en octobre, ça me fera le + grand bien


---------------
çà s'est HFR | Music for the Galaxy
Reply

Marsh Posté le 12-08-2002 à 19:35:55    

Schimz a écrit a écrit :

c'est ça merçi  :)  
 
je vais faire un stage JS en octobre, ça me fera le + grand bien




 
si tu as d'autres questions n'hésite pas  :hello:

Reply

Sujets relatifs:

Leave a Replay

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