Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1572 connectés 

  FORUM HardWare.fr
  Programmation
  HTML/CSS

  affichage dynamique d'un calcul dans une balise (newbie inside)

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

affichage dynamique d'un calcul dans une balise (newbie inside)

n°1413189
snp
quand on sait pas, on se tait
Posté le 25-07-2006 à 16:11:14  profilanswer
 

Bonjour,
je débute tout juste en javascript...
j'ai besoin de faire une feuille de calcul avec l'affichage de mes résultats en instantané.
J'ai donc commencé à coder avec ça mais tout ne marche pas :

Code :
  1. <html>
  2. <head>
  3.        <title>Essai JS</title>
  4. <script language=JavaScript>
  5. function Calcule()
  6. {
  7. var c1=document.getElementById('chiffre1').value
  8. var c2=document.getElementById('chiffre2').value
  9. var tt=c1*c2
  10. document.getElementById('total').innerHTML = tt
  11. }
  12. </script>
  13. </head>
  14. <center><h1><hr>
  15. <form name="facture">
  16. Chiffre 1 : <input type="text" id="chiffre1" size="3" onkeyup="document.getElementById('rappel_chiffre1').innerHTML = this.value;"><br>
  17. Chiffre 2 : <input type=text id="chiffre2" size="3" onkeyup="Calcule()"><br>
  18. Total : <input type=text name="total" size="3" readonly=1>
  19. <br>
  20. <br>
  21. <br>
  22. <div id="rappel_chiffre1"></div>
  23. TOTAL : <div id="total"></div>
  24. <br>
  25. <input type=button value="Calculer" onClick="Calcule()">
  26. </form>
  27. </body>
  28. </html>


 
En fait, mon chiffre 1 s'affiche bien dans la balise "rappel_chiffre1" et le résultat de la multiplication se fait bien dans mon <input type=text name="total"> mais pas dans la balise <div id="total"></div>.
Quelqu'un peut-il m'éclairer à se sujet SVP ??
 
Merci d'avance ! :hello:

mood
Publicité
Posté le 25-07-2006 à 16:11:14  profilanswer
 

n°1413286
Arjuna
Aircraft Ident.: F-MBSD
Posté le 25-07-2006 à 17:26:10  profilanswer
 

y'a un prof qui donne ça en TP ou quoi ?

n°1413292
dwogsi
Défaillance cérébrale...
Posté le 25-07-2006 à 17:31:02  profilanswer
 

Ouai ça à lair à la mode en ce moment.
Sinon juste après un p'tit coup d'oeuil tu trouve pas qu'il manque des ; dans ton code?

n°1413298
Arjuna
Aircraft Ident.: F-MBSD
Posté le 25-07-2006 à 17:35:22  profilanswer
 

C'est normal, JavaScript c'est du Ruby (dixit Masklinn)
 
Donc y'a pas de ";" en fin de ligne...
 
C'est bien connu voyons !
T'es pas à l'ordre du jour toi :o
 
:sarcastic:
 
(qu'est-ce qu'il faut pas dire comme âneries pour plaire à Masklinn...)

n°1413314
anapajari
s/travail/glanding on hfr/gs;
Posté le 25-07-2006 à 17:54:34  profilanswer
 

snp a écrit :

Bonjour,
je débute tout juste en javascript...
j'ai besoin de faire une feuille de calcul avec l'affichage de mes résultats en instantané.
J'ai donc commencé à coder avec ça mais tout ne marche pas :

Code :
  1. ...
  2. document.getElementById('total').innerHTML = tt
  3. ...
  4. Total : <input type=text name="total" size="3" readonly=1>
  5. ...
  6. <div id="rappel_chiffre1"></div>


 
En fait, mon chiffre 1 s'affiche bien dans la balise "rappel_chiffre1" et le résultat de la multiplication se fait bien dans mon <input type=text name="total"> mais pas dans la balise <div id="total"></div>.
Quelqu'un peut-il m'éclairer à se sujet SVP ??


Bin, sans avoir tester ( et même sans les points virgules et avec du code dégueu) je pense que ça doit marcher, mais pas comme tu dis.
A mon avis le calcul est bien affiché dans la div mais pas dans l'input, vu que le seul endroit ou tu l'affiches c'est là:

Code :
  1. document.getElementById('total').innerHTML = tt


et que l'objet ayant un id total c'est ton div.
Si tu veux que cela s'affiche dans ton input total, il faut que tu lui demandes [:spamafote]

n°1413413
snp
quand on sait pas, on se tait
Posté le 25-07-2006 à 22:06:23  profilanswer
 

Merci pour les réponses les gars....le pb(et ça je viens de le découvrir) c'esty que ça marche avec Firefox mais pas avec IE...
OK pour les ";" mais on les met ou et quand ces ";" ?
 
sorry mais newbie newbie newbie newbie newbie newbie inside !!!

n°1413565
snp
quand on sait pas, on se tait
Posté le 26-07-2006 à 08:38:37  profilanswer
 

Apparemment ça ça marche :

Code :
  1. <html>
  2. <head>
  3.        <title>Essai JS</title>
  4. <script language=JavaScript>
  5. function Calcule()
  6. {
  7. var c1=document.getElementById('chiffre1').value;
  8. var c2=document.getElementById('chiffre2').value;
  9. var tt=c1*c2
  10. document.getElementById('total').innerHTML = tt;
  11. }
  12. </script>
  13. </head>
  14. <center><h1><hr>
  15. <form name="facture">
  16. Chiffre 1 : <input type="text" id="chiffre1" size="3" onkeyup="Calcule()"><br>
  17. Chiffre 2 : <input type=text id="chiffre2" size="3" onkeyup="Calcule()"><br>
  18. TOTAL : <div id="total"></div>
  19. </form>
  20. </body>
  21. </html>


 
ça vous semble brouillon comme code ?
Si oui, quelqu'un peut me proposer une autre solution SVP ? :hello:


Message édité par snp le 26-07-2006 à 08:39:39
n°1413584
anapajari
s/travail/glanding on hfr/gs;
Posté le 26-07-2006 à 09:32:39  profilanswer
 

nan mais "a la limite" le code javascript il est tolérable, mais ton code html il est à vomir ...

n°1413594
Arjuna
Aircraft Ident.: F-MBSD
Posté le 26-07-2006 à 09:46:06  profilanswer
 

même DW il fait pas des trucs pareils :D

n°1413612
snp
quand on sait pas, on se tait
Posté le 26-07-2006 à 10:11:57  profilanswer
 

je me suis pas attardé sur le code HTML : c'est une copie d'un code trouvé sur le net...je n'avais modifié que la partie js !
mais de là à dire qu'il est a vomir....y'a que 5 lignes !!!!
 
Merci pour les infos

mood
Publicité
Posté le 26-07-2006 à 10:11:57  profilanswer
 

n°1413620
omega2
Posté le 26-07-2006 à 10:24:24  profilanswer
 

snp a écrit :

je me suis pas attardé sur le code HTML : c'est une copie d'un code trouvé sur le net...je n'avais modifié que la partie js !
mais de là à dire qu'il est a vomir....y'a que 5 lignes !!!!
 
Merci pour les infos


Le probléme, c'est que les balises ne sont pas toutes fermés (<center> et <h1> ) que le titre principal contient un formulaire (depuis quand un formulaire est un titre?)
<H1> est un élément de type "block", qui n'est censé contenir que des éléments de type "inline".
tes éléments "input" n'ont pas de propriété "name", propriété obliguatoire pour cet élément même si c'est une propriété déprécié pour quasiment tous les autres.
 
En bref, c'est un code html qui n'est pas valide.

n°1413631
anapajari
s/travail/glanding on hfr/gs;
Posté le 26-07-2006 à 10:39:51  profilanswer
 

moi en prem's j'aurais mis l'absence de balise ouvrante body :o

n°1413632
snp
quand on sait pas, on se tait
Posté le 26-07-2006 à 10:41:48  profilanswer
 

tiens d'ailleurs, c koi exactement la différence entre "name" et "id" ??

n°1413636
snp
quand on sait pas, on se tait
Posté le 26-07-2006 à 10:47:01  profilanswer
 

omega2 a écrit :

Le probléme, c'est que les balises ne sont pas toutes fermés (<center> et <h1> ) -> OK
que le titre principal contient un formulaire (depuis quand un formulaire est un titre?)  :non: là je vois pas de koi tu parles
<H1> est un élément de type "block", qui n'est censé contenir que des éléments de type "inline".-> OK
tes éléments "input" n'ont pas de propriété "name", propriété obliguatoire pour cet élément même si c'est une propriété déprécié pour quasiment tous les autres.-> voir mon msg précédent
 
En bref, c'est un code html qui n'est pas valide.


 
Bon c'est vrai tout ça mais je répète que je l'ai copié-collé-bidouillé d'un site....

n°1413638
anapajari
s/travail/glanding on hfr/gs;
Posté le 26-07-2006 à 10:48:50  profilanswer
 

Si tu écris:

Code :
  1. <h1><form>...


tu mets dans la balise H1 ( titre de la page une formulaire)
 
Enfin normalement la démarche c'est:

  • copié
  • analysé
  • compris
  • modifié selon mes besoins
  • collé

[:spamafote]


Message édité par anapajari le 26-07-2006 à 10:49:22
n°1413656
snp
quand on sait pas, on se tait
Posté le 26-07-2006 à 10:58:44  profilanswer
 

Ah !!!!!!! OK
je m'étais attardé sur la balise <title> !
autant pour moi...
mais bon, si il fo s'amuser a refaire tte une mise en page pour tester un formulaire ! ça c'est fait après, une fois le principe compris.
si le code avait fait 300 lignes, je dis pas mais là....
j'en tiendrais compte pour la suite....
merci en tout cas !
 
euh....et pour la différence entre entre "name" et "id" ??


Message édité par snp le 26-07-2006 à 10:59:37
n°1413681
snp
quand on sait pas, on se tait
Posté le 26-07-2006 à 11:28:59  profilanswer
 

sinon, autre question mais j'ai pas envie de recréér un post pour ça :
avec le code ci-dessous j'arrive pas à avoir mon TOTAL et le résultat de mon "div" sur la même ligne.

Code :
  1. <div align="center" class="IntraBE2">TOTAL = <div id="addition"></div></div>


y'a une astuce ?

n°1413692
omega2
Posté le 26-07-2006 à 11:35:50  profilanswer
 

id permet principalement :
- de nomer chaque élément de maniére unique
- d'appliquer les régles d'affichage en css  
- d'identifier unitairement chaque élément en javascript (getElementById) afin de leur appliquer un traitement.
 
Quand on valide un formulaire, "name" permet de nomer les données au moment de leur envoie au serveur.

n°1413694
omega2
Posté le 26-07-2006 à 11:36:49  profilanswer
 

snp a écrit :

sinon, autre question mais j'ai pas envie de recréér un post pour ça :
avec le code ci-dessous j'arrive pas à avoir mon TOTAL et le résultat de mon "div" sur la même ligne.

Code :
  1. <div align="center" class="IntraBE2">TOTAL = <div id="addition"></div></div>


y'a une astuce ?

oui, mettre un '<span id="addition">' au lieu d'un '<div id="addition">'.

n°1413700
snp
quand on sait pas, on se tait
Posté le 26-07-2006 à 11:40:02  profilanswer
 

Les gars : CHAPEAU !! réactifs et précis ...!
Merci bp pour tes explications omega2, a chaque fois tu fais mouche !
Bonne continuation !


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  HTML/CSS

  affichage dynamique d'un calcul dans une balise (newbie inside)

 

Sujets relatifs
Calcul automatique de champs texteModifier l'affichage du Statut punbb
PHP Affichage sur plusieurs pagesHTML Image Affichage
Requete Count() et affichage ASPaffichage video
ajout dynamique de variables dans un objetFiltres tableau croisé dynamique
affichage de graph, de courbes, d'histogrammes en c++procédure évenementielle dynamique ?? oui mais...
Plus de sujets relatifs à : affichage dynamique d'un calcul dans une balise (newbie inside)


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR