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 :

Variable affichée qui se met à jour suivant une fonction


Sujet :

JavaScript

  1. #21
    Expert éminent sénior
    Avatar de Auteur
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    7 648
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 7 648
    Points : 11 137
    Points
    11 137
    Par défaut
    1-
    Citation Envoyé par maryliseduteil
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    document.getElementById("po").innerHTML = depart;
    rhaaaaaaaaa C'est quoi cette ligne de code qui se balade toute seule dans tes balises script (pas la ligne qui se trouve dans ta fonction). Comment est chargée une page HTML ?
    Commence par corriger ce 1er point en prenant en compte ma remarque précédente (onload....)

    2-
    Citation Envoyé par maryliseduteil
    Qu'est ce qui ne va pas dans ma fonction if ?
    une fonction if
    que veux-tu faire avec ce if ?

  2. #22
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    <div id="bourse"><div id="po"></div></div>
     
    <div id="txt">
      <p>Dépenser 5 pièces d'or. </p>
     
      <div id="txt_a" style="display:none;">
        <button onclick="depense(-5)"><strong>Accepter</strong></button>
      </div>
     
      <div id="txt_b" style="display:none;">
        <p><strong>Vous ne pouvez pas payer</strong></p>
      </div>
     
    </div>

    (j'ai remplacé "depart" par "bourse", plus explicite) :
    Code JavaScript : 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
    var bourse = 20; // valeur de départ
    window.onload = function() { depense(0); }; // affiche la valeur de départ (modif=0)
     
    function depense(modif) {
      bourse = bourse + modif;
      document.getElementById("po").innerHTML = bourse;
      verif_depense(bourse);
    }
     
    function verif_depense(bourse) {
      if (bourse > 4) {
        document.getElementById('txt_a').style.display = 'block';
        document.getElementById('txt_b').style.display = 'none';
      } else {
        document.getElementById('txt_a').style.display = 'none';
        document.getElementById('txt_b').style.display = 'block';
      }
    }
    Dernière modification par Invité ; 05/12/2016 à 13h53.

  3. #23
    Futur Membre du Club
    Femme Profil pro
    Webmaster
    Inscrit en
    Novembre 2016
    Messages
    25
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Webmaster
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Novembre 2016
    Messages : 25
    Points : 6
    Points
    6
    Par défaut
    @Auteur : cette ligne sert à afficher la valeur de départ dans mon div.
    Si je ne met pas cette ligne, le div n'apparaît que lorsque la fonction est enclenchée, et non dès le départ comme je le souhaitais.

    Le if n'est pas une fonction c'est vrai. Mais on s'est compris je pense.

    Je souhaite donc afficher tel ou tel bloc de texte suivant le nombre de pièces qu'il me reste.

    @Jreaux : merci pour le code.
    Je vais regarder tout ça dès que j'ai un moment.

    Merci pour votre aide.

  4. #24
    Expert éminent sénior
    Avatar de Auteur
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    7 648
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 7 648
    Points : 11 137
    Points
    11 137
    Par défaut
    Citation Envoyé par maryliseduteil Voir le message
    @Auteur : cette ligne sert à afficher la valeur de départ dans mon div.
    je mettrais ma main à couper que cela ne fonctionne pas. Quand tu écris :
    Code javascript : Sélectionner tout - Visualiser dans une fenêtre à part
    <script type="text/javascript">document.getElementById("po").innerHTML = depart;
    dans l'entête de ta page (balises head), l'élément "po" n'est pas encore chargé, donc le document.getElementById("po") retourne une erreur. Si tu veux afficher quelque chose dans cet élément après le chargement de la page tu dois le faire sur l'événement onload :
    Code html : 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
     
    <!DOCTYPE html>
    <html lang="fr">
    <head>
    <title>Test</title> 
    <script type="text/javascript">  
    var msg= "coucou";
    function afficheMessage() 
    {
        document.getElementById("po").innerHTML = msg;
    }
    </script>
    </head>
     
    <body onload="afficheMessage()">
        <div id="po">&nbsp;</div><!-- affiche coucou-->
    </body>
    </html>

    Ne fonctionne pas :
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
     
    <!DOCTYPE html>
    <html lang="fr">
    <head>
    <title>Test</title> 
    <script type="text/javascript">  
    var msg= "coucou";
    document.getElementById("po").innerHTML = msg;
    </script>
    </head>
     
    <body>
        <div id="po">&nbsp;</div><!-- la page reste vide....-->
    </body>
    </html>

  5. #25
    Membre confirmé
    Homme Profil pro
    Analyse système
    Inscrit en
    Mai 2014
    Messages
    388
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Arménie

    Informations professionnelles :
    Activité : Analyse système
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Mai 2014
    Messages : 388
    Points : 578
    Points
    578
    Par défaut
    Bonjour,

    Pour que le code ci-dessous fonctionne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    <script>  
    if (depart > 4) {document.getElementById('txt_a').style.display='block';}
    else {document.getElementById('txt_b').style.display='block';}	
    </script>
    Il faut qu'il soit exécuté plus d'une fois, en l'insérant dans la fonction depense().

  6. #26
    Futur Membre du Club
    Femme Profil pro
    Webmaster
    Inscrit en
    Novembre 2016
    Messages
    25
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Webmaster
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Novembre 2016
    Messages : 25
    Points : 6
    Points
    6
    Par défaut
    Bonjour,
    Merci pour vos conseils, je vais voir ce que j'arrive à faire avec tout ça.

  7. #27
    Membre confirmé
    Homme Profil pro
    Analyse système
    Inscrit en
    Mai 2014
    Messages
    388
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Arménie

    Informations professionnelles :
    Activité : Analyse système
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Mai 2014
    Messages : 388
    Points : 578
    Points
    578
    Par défaut
    Bonjour,

    maryliseduteil a écrit :

    Qu'est ce qui ne va pas dans ma fonction if ?
    Votre condition if n'est exécutée qu'une seule fois. Il faut la placer dans votre fonction depense().

  8. #28
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2014
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Sénégal

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2014
    Messages : 14
    Points : 12
    Points
    12
    Par défaut
    Je vous conseille d'aller apprendre a utiliser les fonctions et comment l'appeler .Dans votre cas on dirai que vous ne connaissez pas assez les bases en Javascript.

Discussions similaires

  1. Réponses: 13
    Dernier message: 01/04/2008, 09h43
  2. Afficher la date du jour dans une formule
    Par Yodaf dans le forum SharePoint
    Réponses: 3
    Dernier message: 06/08/2007, 15h15
  3. Réponses: 5
    Dernier message: 20/04/2007, 09h00
  4. Un programme qui se met à jour tout seul
    Par ElbaC dans le forum C++
    Réponses: 6
    Dernier message: 09/06/2006, 11h19
  5. Réponses: 3
    Dernier message: 18/10/2005, 15h34

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