IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

[DOM] calcul valeurs cumulées


Sujet :

JavaScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre chevronné
    Homme Profil pro
    Webmaster
    Inscrit en
    Janvier 2007
    Messages
    489
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France

    Informations professionnelles :
    Activité : Webmaster
    Secteur : Biens de consommation

    Informations forums :
    Inscription : Janvier 2007
    Messages : 489
    Par défaut [DOM] calcul valeurs cumulées
    Bonjour à tous,

    Voilà, j'ai un formulaire qui ressemble grosso modo à ca :

    <INPUT TYPE='text' NAME='prix[1]' value='9'>
    <INPUT TYPE='text' NAME='prix[2]' value='50'>
    ...
    <INPUT TYPE='text' NAME='prix[30]' value='22'>

    Dans 'prix[$i], $i n'étant pas une valeur fixe je peux aussi bien avoir en fin de chaine prix[50] ou prix[250].
    J'espère être assez claire...gloups.

    Comment faire pour avoir une formule qui calcule ainsi l'ensemble de ces valeurs (9+50+...+22) sensible au onchange par exemple si l'on en modifie une ?

    Pardon pour mon ignorance js...

    Merci à vous

  2. #2
    Membre averti
    Inscrit en
    Juillet 2006
    Messages
    28
    Détails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 28
    Par défaut
    Bonjour,
    il faut tout d'abord créer une fonction qui calcul la somme
    exemple
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    function somme()
    { var total=0;
    for(var i ;i<nbreOfValeur;i++)
    {total=total+Integer.parseInt(NomFormulaire.Prix[i]);
    }
    return total
     
    }
    normalement il faut afficher le total quelque part donc tu doit créer une td ou tr ou ... avec un id
    exemple
    <td id="lasomme">la somme doit apparaitre ici</td>
    puis tu dois créer une fonction qui modifier le total à chaque modification dans le formulaire (c'est le DHTML) innerHTML permet d modifier le contenu du td dynamiquement.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    function afficherSomme(){
    
    document.getElementById("lasomme").innerHTML=somme();
    }
    en fin tu doit appeller la fonction afficherSomme() à chaque modification de tes champs
    PS: je n'ai pas tester ce code
    A+

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    41
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 41
    Par défaut
    Met tout tes INPUT de prix entre deux balise, puis dans ton script utilise le DOM pour boucler sur les enfants (les input) de ta balise.
    http://javascript.developpez.com/faq/?page=DOM

  4. #4
    Membre chevronné
    Homme Profil pro
    Webmaster
    Inscrit en
    Janvier 2007
    Messages
    489
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France

    Informations professionnelles :
    Activité : Webmaster
    Secteur : Biens de consommation

    Informations forums :
    Inscription : Janvier 2007
    Messages : 489
    Par défaut
    Mille mercis pour votre aide.

    je vais potasser ca.

    Youpiii

  5. #5
    Membre chevronné
    Homme Profil pro
    Webmaster
    Inscrit en
    Janvier 2007
    Messages
    489
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France

    Informations professionnelles :
    Activité : Webmaster
    Secteur : Biens de consommation

    Informations forums :
    Inscription : Janvier 2007
    Messages : 489
    Par défaut
    Pardon, je dois être un boulet, j'essaye dans tous les sens.
    Un script de base du style :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    <SCRIPT LANGUAGE="JavaScript" TYPE="text/JavaScript">
    function somme()
    { var total=0;
    for(var $i ;$i<3;$i++)
    {total=total+Integer.parseInt(bdc.prix[$i]);
    }
    return total
    }
    function afficherSomme(){
     
    document.getElementById("lasomme").innerHTML=somme();
    }
    </SCRIPT>
    </HEAD>
     
     <BODY>
    <form name='bdc'>
    <TABLE>
    <TR><TD><INPUT TYPE='text' NAME='prix[1]' value='9' onchange='afficherSomme()'></TD></TR>
    <TR><TD><INPUT TYPE='text' NAME='prix[2]' value='3' onchange='afficherSomme()'></TD></TR>
    <TR><TD><INPUT TYPE='text' NAME='prix[3]' value='2' onchange='afficherSomme()'></TD></TR>
    <TR><td id="lasomme">la somme doit apparaitre ici</TD></TR>
    </TABLE>
    </form>
    Ne donne rien
    Pardon...

  6. #6
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 659
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 659
    Billets dans le blog
    1
    Par défaut
    essaye déja d'utilise une syntaxe plus correct ...




    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    document.forms['bdc'].elements['prix['+$i+']']
    mais tu te compliques vraiment avec un tel nommage ...

    eut suffit
    avec
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    document.forms['bdc'].elements['prix'][$i]
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Calcul d'une valeur cumulée
    Par poiuyt256 dans le forum VBA Access
    Réponses: 1
    Dernier message: 28/01/2009, 22h08
  2. [XI]calcul de cumul depuis une date
    Par lamyae_84 dans le forum SAP Crystal Reports
    Réponses: 1
    Dernier message: 04/05/2007, 23h20
  3. Réponses: 2
    Dernier message: 13/02/2007, 18h02
  4. calcule de cumul
    Par youcef81 dans le forum Langage SQL
    Réponses: 2
    Dernier message: 09/10/2006, 13h31
  5. calcul du cumul ds un formulaire access
    Par fefiche dans le forum Access
    Réponses: 5
    Dernier message: 06/06/2006, 12h48

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo