Additions en folie

Résolu
Farfadam Messages postés 46 Date d'inscription lundi 1 novembre 2004 Statut Membre Dernière intervention 14 mai 2008 - 11 mai 2008 à 18:53
Farfadam Messages postés 46 Date d'inscription lundi 1 novembre 2004 Statut Membre Dernière intervention 14 mai 2008 - 14 mai 2008 à 19:24
Bonjour à tous,
je me permets de faire appel à vous, car là je sèche.

Je cherche à faire la somme de nombreux input.
Pour être plus clair, j'ai quelque chose comme ça :


<hr />

 <form id="form1">

 
  
       
        <fieldset>
          <legend>Recettes</legend>
            

                    
            ----

              &amp;nbsp;,
              Saison &amp;eacute;coul&amp;eacute;e,
              Pr&amp;eacute;visionnel,
           
           
           
            ----

              Ah&amp;eacute;sions [1],
                                <label>
                  
                  </label>
                &amp;#8364;,
                                
                &amp;#8364;,
           
            ----

              Participation aux activit&amp;eacute;s [1],
                                
                &amp;#8364;,
                                
                &amp;#8364;,
           
            ----

              Participation sorties [3],
                                
                &amp;#8364;,
                                
                &amp;#8364;,
           
            ----

              Manifestation/Spectacles [3],
                                
                &amp;#8364;,
                                
                &amp;#8364;,
           
            ----

              Ventes [1],
                                
                &amp;#8364;,
                                
                &amp;#8364;,
           
            ----

              Inter&amp;ecirc;ts de compte [1],
                                
                &amp;#8364;,
                                
                &amp;#8364;,
           
            ----

              Divers,
                                
                &amp;#8364;,
                                
                &amp;#8364;,
           
            ----

              Subvention fonctionnement [1],
              &amp;nbsp;,
              &amp;nbsp;,
           
            ----

              Maurepas

                  
                      
                &amp;#8364;,
              Maurepas

                  
                      
                &amp;#8364;,
           
            ----

              Autre

                  
                      
                &amp;#8364;,
              Autre

                  
                      
                &amp;#8364;,
           
            ----

              Subvention formation [2],
              &amp;nbsp;,
           
            ----

              Maurepas

                  
                      
                &amp;#8364;,
              Maurepas

                  
                      
                &amp;#8364;,
           
            ----

              Autre

                  
                      
                &amp;#8364;,
              Autre

                  
                      
                &amp;#8364;,
           
            ----

              Subvention investissement [4],
              &amp;nbsp;,
              &amp;nbsp;,
           
            ----

              Maurepas

                  
                      
                &amp;#8364;,
              Maurepas

                  
                      
                &amp;#8364;,
           
            ----

              Autre

                  
                      
                &amp;#8364;,
              Autre

                  
                      
                &amp;#8364;,
           
            ----

              Subvention manifestation [3],
              &amp;nbsp;,
              &amp;nbsp;,
           
            ----

              Maurepas

                  
                      
                &amp;#8364;,
              Maurepas

                  
                      
                &amp;#8364;,
           
            ----

              Autre

                  
                      
                &amp;#8364;,
              Autre

                  
                      
                &amp;#8364;,
           
           
             <tfoot>
            ----

              TOTAL,
                                
                &amp;#8364;,
                                
                &amp;#8364;,
           
             </tfoot>
         

           
        </fieldset>
       
      

            

        
       <fieldset>
          <legend>R&amp;eacute;capitulatif</legend>
                        ----

              &amp;nbsp;,
              Saison &amp;eacute;coul&amp;eacute;e,
              Previsionnel,
           
            ----

              Fonctionnement [1],
                                <label>
                  
                  </label>
              &amp;#8364;,
                                <label>
                  
                  </label>
                &amp;#8364;,
           
            ----

              Manifestations [3],
                                
                &amp;#8364;,
                                
                &amp;#8364;,
           
            ----

              Formations [2],
                                
                &amp;#8364;,
                                
                &amp;#8364;,
           
            ----

              Investissement [4],
                                
                &amp;#8364;,
                                
                &amp;#8364;,
           
            ----

              Autre,
                                
                &amp;#8364;,
                                
                &amp;#8364;,
           
            ----

              TOTAL,
                                
                &amp;#8364;,
                                
                &amp;#8364;,
           
         

           
        </fieldset>
       
     

</form>


Pour éviter d'avoir un script de 5 km de long,
je cherche une fonction "générale" de façon à avoir quelque chose comme ça dans l'input où je veux ma somme :

Voili voilou,
d'avance merci pour votre aide,

Farfadam

26 réponses

cs_bultez Messages postés 13615 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 30
12 mai 2008 à 11:55
calcul est pas tout bon ?
    est-ce que tu remet à 0   la zone receptrice ?

    ...
   function additione_moi_les_champ()
    {  document.form1[additione_moi_les_champ.arguments[0]].value=0;
        for ( var n=1; n < additione_moi_les_champ.arguments.length; n++ )
        {    ...

<hr />                Cordialement            Bul         [mon Site]     [M'écrire]
3
cs_bultez Messages postés 13615 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 30
12 mai 2008 à 07:23
Bonjour,
    ben... tu l'avais quasi fait....

</form>

<script type="text/javascript">
    function additione_moi_les_champ(ou)
    {  for ( var n=1; n < additione_moi_les_champ.arguments.length; n++ )
        {    document.form1[additione_moi_les_champ.arguments[0]].value =
                Number(document.form1[additione_moi_les_champ.arguments[0]].value)+
                Number(document.form1[additione_moi_les_champ.arguments[n]].value);   
        }
    }
</script>

<hr />                Cordialement            Bul         [mon Site]     [M'écrire]
0
cs_bultez Messages postés 13615 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 30
12 mai 2008 à 10:07
j'ai omis de préciser qu'il fallait mettre :
   <form id="form1"
            name="form1" >
et que, probablement, une remise à 0 avant les additions
   sera utile.
<hr />
                Cordialement            Bul         [mon Site]     [M'écrire]
0
Farfadam Messages postés 46 Date d'inscription lundi 1 novembre 2004 Statut Membre Dernière intervention 14 mai 2008
12 mai 2008 à 10:43
Merci,
mais j'ai un petit soucis,

pour simplifier, j'ai essayé d'adapter le script de la façon suivante :

<script type="text/javascript">
    function additione_moi_les_champ(ou)
    {  for ( var n=1; n < additione_moi_les_champ.arguments.length; n++ )
        {    document.form1[additione_moi_les_champ.arguments[0]].value =
                Number(document.form1[additione_moi_les_champ.arguments[0]].value)+
                Number(document.form1[additione_moi_les_champ.arguments[n]].value);   
        }
    }
</script>

<form id="form1" name="form1">





 
 
 
 
 
   
    
     



    
</form>






...de façon à ce que le résultat s'affiche automatiquement dans le champ "total",
mais visiblement c'est pas comme ça qu'on doit faire parce que ça ne marche pas...
Une petite idée ?
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_bultez Messages postés 13615 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 30
12 mai 2008 à 10:57
quelques petites imprécisions....
    function additione_moi_les_champ()   // paramètre inutile
    'additione_moi_les_champ (
               "total",      puisque la fonction attend le récepteur en 1er paramètre 
                                  on peut bien entendu faire autrement !
              "investissement",
              "fonctionnement",
              "ventes",
              "sorties");   '  />  attention aux " et ', sinon l'interpréteur s'y pomme
   

    mais tout ça sont des erreurs de syntaxe ! signalées !
FireFox
, regarder la "console d'erreurs"
Outils / Console d'erreurs
et mieux : télécharger mon Site]     [M'écrire]
0
cs_bultez Messages postés 13615 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 30
12 mai 2008 à 10:59
j'ai oublié de dire aussi que le calcul est déclenché par onkeyup....
    ce qui veut dire qu'il faut saisir un caractère dans total pour
       faire le calcul.... curieux, mais si cela te convient !
<hr />                Cordialement            Bul         [mon Site]     [M'écrire]
0
Farfadam Messages postés 46 Date d'inscription lundi 1 novembre 2004 Statut Membre Dernière intervention 14 mai 2008
12 mai 2008 à 11:13
oui effectivement, quelques petites erreurs d'imprecision (erreurs de débutant )
bon alors maintenant ça marche mieux,
juste une dernière chose, comme tu le signal toi même, pour qu'un résultat s'affiche, on est obligé de rentrer quelque chose dans le champ "total", comment remedier à cela de manière à ce que le résultat s'affiche tout seul ?

Encore merci pour ta precieuse aide ;)

 
0
cs_bultez Messages postés 13615 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 30
12 mai 2008 à 11:23
>>comment remedier à cela de manière à ce que le résultat s'affiche tout seul ?
    peut-être onkeyup sur les champs de saisie
       "investissement", "fonctionnement", "ventes",  "sorties"
<hr />                Cordialement            Bul         [mon Site]     [M'écrire]
0
Farfadam Messages postés 46 Date d'inscription lundi 1 novembre 2004 Statut Membre Dernière intervention 14 mai 2008
12 mai 2008 à 11:33
Comme ça ?

<form id="form1" name="form1">





 
 
 
 
 
   
     
          
</form>








 
0
cs_bultez Messages postés 13615 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 30
12 mai 2008 à 11:39
à ton avis ?   tu as essayé ?
la fonction attend la zone réceptrice et les champs à additionner...
<hr />                Cordialement            Bul         [mon Site]     [M'écrire]
0
Farfadam Messages postés 46 Date d'inscription lundi 1 novembre 2004 Statut Membre Dernière intervention 14 mai 2008
12 mai 2008 à 11:48
Heum,
là j'avoue que je suis un peu pommé...
pas si facile que ça le javaScript...

avec ça j'ai pas un affichage automatique mais le calcul est bon

<form id="form1" name="form1">







 
 ...  
   
     
           </form>





<form id="form1" name="form1">




avec ça j'ai un calcul automatique mais le calcul est pas bon du tout

 
 ...  
   
    
     



    
</form>





 
0
cs_bultez Messages postés 13615 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 30
12 mai 2008 à 11:58
>>pas si facile que ça le javaScript.
    comme tous les langages
    pour javascript, "simple" pour débuter,
       il se complexifie ( et sérieusemeny ) quand on approndit.
    mais ici, pas un problème de langage à priori.
<hr />                Cordialement            Bul         [mon Site]     [M'écrire]
0
cs_bultez Messages postés 13615 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 30
12 mai 2008 à 12:00
d'ailleurs dès que tu seras au point,
    il faudrait éviter de répéter la même chose sur les champs de saisie....
    fait ça en dynamique par exemple, en POO aussi pourquoi pas....
<hr />                Cordialement            Bul         [mon Site]     [M'écrire]
0
Farfadam Messages postés 46 Date d'inscription lundi 1 novembre 2004 Statut Membre Dernière intervention 14 mai 2008
12 mai 2008 à 13:08
Merci beaucoup pour toutes ces precieuses information (ça me retire une grosse épine du pied)
 Par contre dans ton dernier message tu parles de faire ça en "dynamique" ou en "POO"
qu'est ce que c'est que ça ?
Tu peux m'en dire un peu plus ?

 
0
cs_bultez Messages postés 13615 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 30
12 mai 2008 à 13:42
quand, en informatique, on répète les choses plusieurs fois....
    ( c'est le cas ici avec les onkeyup sur les champs de saisie )
    "ce n'est pas normal". on doit pouvoir automatiser ça.
    la "Programmation Orientée Objet" n'est pas à mettre à
    toutes les sauces, systématiquement, enfin, ce n'est que
    mon avis, mais est "bien plus qu'utile"... souvent.
bref, en dynamique, tu devrais pouvoir faire :
    élément.onkeyup=function()   { du javascript }
    tant qu'à la POO, ce serait un peu long à expliquer ici,
       mais parfaitement adapté ( ici aussi )
<hr />                Cordialement            Bul         [mon Site]     [M'écrire]
0
Farfadam Messages postés 46 Date d'inscription lundi 1 novembre 2004 Statut Membre Dernière intervention 14 mai 2008
12 mai 2008 à 17:05
merci ;)

 
0
Farfadam Messages postés 46 Date d'inscription lundi 1 novembre 2004 Statut Membre Dernière intervention 14 mai 2008
12 mai 2008 à 18:24
Un petit souci,
désolé de revenir à la charge, mais je rencontre un petit problème,

soit 5 input :

Je cherche à avoir dans un autre input, la somme des A et dans un autre la somme des B

j'ai fait :

mais visiblement ça ne marche pas,
en dernier petit coup de main ?
0
cs_bultez Messages postés 13615 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 30
12 mai 2008 à 18:38
tu as changé le script originel ?
il y était prévu que le résultat allait dans le 1er paramètre.
    à priori, ici tu le donnes en dernier. pas trsè compliqué
    de modifier le js, mais encore faut-il le faire si tu tiens
    à que ce soit comme ça.
<hr />                Cordialement            Bul         [mon Site]     [M'écrire]
0
Farfadam Messages postés 46 Date d'inscription lundi 1 novembre 2004 Statut Membre Dernière intervention 14 mai 2008
12 mai 2008 à 18:58
heu oui pardons,
petite erreur :

soit 5 input :

Je cherche à avoir dans un autre input, la somme des A et dans un autre la somme des B

j'ai fait :
0
cs_bultez Messages postés 13615 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 30
13 mai 2008 à 06:39
Bonjour,

tu n'as pas 2 ??

l'interpréteur ne sait pas trop quoi faire....
<hr />                Cordialement            Bul         [mon Site]     [M'écrire]
0
Rejoignez-nous