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 :

calcul à temps réel dans un tableau avec formulaire


Sujet :

JavaScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Février 2007
    Messages
    119
    Détails du profil
    Informations forums :
    Inscription : Février 2007
    Messages : 119
    Par défaut calcul à temps réel dans un tableau avec formulaire
    Bonjour
    j'ai un problème, je voudrais calculer dans un tableau le montant qui est égal à prix*qte de manière instantannée.

    j'ai un code, que je considère correct, mais à l'exécution, il m'affiche "erreur sur la page", je vous prie de m'orienter car je suis perdue.

    voici mon code
    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
    25
    26
     
     
    <script language="javascript"> 
    function calculMontant(pNum){ 
     
    document.all['montant'+pNum].value=document.all['pu'+pNum].value*document.all['qte'+pNum].value 
    } 
     
    </script> 
    <?php
    for ($nb=1; $nb<=10; $nb=$nb+1) 
    { //début de ma boucle 
    ?> 
    <table>
    <tr> 
    <? 
    echo'<td><input type="text" name="produit'.$nb.'"></td>'; 
    echo'<td><input type="texte" name="pu'.$nb.'" onKeyup="calculMontant($nb)"></td>'; 
    echo'<td><input type="texte" name="qte'.$nb.'" onKeyup="calculMontant($nb)"></td>'; 
    echo'<td><input type="texte" name="montant'.$nb.'"> €  </td>'; 
     
    ?> 
    </tr> 
     
    <? } ?> 
    </table>
    salutations

  2. #2
    Membre Expert
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    1 349
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Avril 2006
    Messages : 1 349
    Par défaut
    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
    <script language="javascript"> 
    function calculMontant(pNum){ 
     
    document.all['montant'+pNum].value=document.all['pu'+pNum].value*document.all['qte'+pNum].value 
    } 
     
    </script>
    <table> 
    <?php
    for ($nb=1; $nb<=10; $nb=$nb+1) 
    { //début de ma boucle 
    echo'<tr> <td><input type="text" name="produit'.$nb.'"></td>
    	<td><input type="texte" name="pu'.$nb.'" onKeyup="calculMontant('.$nb.')"></td> 
    	<td><input type="texte" name="qte'.$nb.'" onKeyup="calculMontant('.$nb.')"></td> 
    	<td><input type="texte" name="montant'.$nb.'"> €  </td></tr> '; 
    } ?> 
    </table>
    comme ça ?

  3. #3
    Membre confirmé
    Inscrit en
    Février 2007
    Messages
    119
    Détails du profil
    Informations forums :
    Inscription : Février 2007
    Messages : 119
    Par défaut
    j'ai pas compris ta question boo64??

    dans ma boucle chaque ligne, il nomme les input selon la variable $nb.
    la fonction calcul montant=pu*qte de la ligne en cours.


    n'est ce pas compréhensible??

  4. #4
    Membre Expert
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    1 349
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Avril 2006
    Messages : 1 349
    Par défaut
    Citation Envoyé par BYALI Voir le message
    j'ai pas compris ta question boo64??

    dans ma boucle chaque ligne, il nomme les input selon la variable $nb.
    la fonction calcul montant=pu*qte de la ligne en cours.


    n'est ce pas compréhensible??
    c'est pas une question teste mon code il n'y a plus d'erreur en rouge la petite modif

  5. #5
    Membre confirmé
    Inscrit en
    Février 2007
    Messages
    119
    Détails du profil
    Informations forums :
    Inscription : Février 2007
    Messages : 119
    Par défaut
    merci , j'ai pas saisi ta réponse au début.

    ça marche trés bien

    est ce que je peux profiter de cette discussion pour ajouter une question??
    je veux faire un évènement, quand le montant est supérieur à 100, il devient rouge sinon il est vert?

    merci de m'orienter

  6. #6
    Membre Expert
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    1 349
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Avril 2006
    Messages : 1 349
    Par défaut
    merci , j'ai pas saisi ta réponse au début.
    j'avoue je n'etais pas très clair ..


    voici les methodes à appliquer dans ton js
    .style.backgroundColor = "#FF0000"; pour le fond en rouge
    .style.color = "#FF0000";
    pour le texte en rouge

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

Discussions similaires

  1. alterner les couleurs dans un tableau avec xsl
    Par Eithelgul dans le forum XSL/XSLT/XPATH
    Réponses: 14
    Dernier message: 03/05/2015, 23h29
  2. Calcul en temps réel dans une 2ème fenêtre
    Par Adakhum dans le forum VB.NET
    Réponses: 23
    Dernier message: 08/11/2014, 15h26
  3. Calculs en temps réel dans un userform
    Par stagmaj dans le forum Macros et VBA Excel
    Réponses: 29
    Dernier message: 09/07/2014, 16h11
  4. [XI] Calcul de valeurs dans un graphique avec une periode de temps
    Par campia dans le forum SAP Crystal Reports
    Réponses: 1
    Dernier message: 23/04/2007, 09h17
  5. balise <img> dans un tableau avec firefox
    Par yannock dans le forum Balisage (X)HTML et validation W3C
    Réponses: 5
    Dernier message: 25/10/2004, 16h44

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