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 :

Afficher une image en fonction de l'état d'une variable


Sujet :

JavaScript

  1. #1
    Membre du Club
    Inscrit en
    Septembre 2008
    Messages
    384
    Détails du profil
    Informations forums :
    Inscription : Septembre 2008
    Messages : 384
    Points : 52
    Points
    52
    Par défaut Afficher une image en fonction de l'état d'une variable
    Bonjour

    Je cherche à afficher une image en fonction de l'etat d'une variable 'var'

    'var' pourra être égale à 0,1,2 ou 3

    si 'var' = 0 je voudrai afficher LED0.gif
    si 'var' = 1 je voudrai afficher LED1.gif
    etc ...

    Pour cela, j'ai intégré ceci dans la ma page HTML :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    document.getElementById('var').innerHTML = '<img src="LED'+getXMLValue(xmlData, 'var')+'.gif">';
    et dans la page HTML, je positionne l'endroit ou je souhaite afficher l'image avec un span id :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <span id="var">?</span>
    Je pense que j'ai mal écris ma fonction Java script, peut être manque t-il un ' quelque-part, car je n'ai aucune image affichée.

    Cependant, lorsque j’écris ceci, l'image apparait bien :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <span id="var"><img src="LED0.gif"></span>
    Pourriez vous m'aider svp ?
    Je vous remercie,

  2. #2
    Modérateur

    Avatar de Robin56
    Homme Profil pro
    Architecte de système d'information
    Inscrit en
    Juin 2009
    Messages
    5 297
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Architecte de système d'information

    Informations forums :
    Inscription : Juin 2009
    Messages : 5 297
    Points : 13 670
    Points
    13 670
    Par défaut
    Premièrement, pour avoir une meilleure aide, poste dans le bon topic. En l'occurrence ici Javascript et non Java.

    Ensuite, je te donnerais ce conseil (de débutant) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    var variable=getXMLValue (xmlData, 'var');
    alert(variable); // la valeur est-elle bien récupérée ?
     
    var imageLED= '<img src="LED' + variable + '.gif">';
    alert(imageLED); // le code HTML est-il correct ?
    Comme ça tu pourras plus facilement cerner le problème.
    Responsable Java de Developpez.com (Twitter et Facebook)
    Besoin d'un article/tutoriel/cours sur Java, consulter la page cours
    N'hésitez pas à consulter la FAQ Java et à poser vos questions sur les forums d'entraide Java
    --------
    Architecte Solution
    LinkedIn : https://www.linkedin.com/in/nicolascaudard/

  3. #3
    Membre du Club
    Inscrit en
    Septembre 2008
    Messages
    384
    Détails du profil
    Informations forums :
    Inscription : Septembre 2008
    Messages : 384
    Points : 52
    Points
    52
    Par défaut
    Merci à vous,

    J'ai bien les 2 alertes , la premiere me renvoi NULL, en effet var = 0

    pour la seconde, j'obtiens le code suivant dans la fenêtre :


    Je veux à présent afficher l'image je procède ainsi, mais ça ne fonctionne pas, peut etre est ce incorrect ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    document.getElementById('etat').innerHTML = var imageLED;
    puis à l'endroit ou je veux afficher l'image :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <span id="etat">?</span>
    Faut il nommer le fichier image LED0.gif ou plutot LEDNULL.gif ?

    Merci à vous,

  4. #4
    Rédacteur/Modérateur
    Avatar de andry.aime
    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    8 391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Ile Maurice

    Informations forums :
    Inscription : Septembre 2007
    Messages : 8 391
    Points : 15 059
    Points
    15 059
    Par défaut
    Bonsoir,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    document.getElementById('etat').innerHTML = imageLED;
    A+.

  5. #5
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Points : 91 220
    Points
    91 220
    Billets dans le blog
    20
    Par défaut
    J'ai bien les 2 alertes , la premiere me renvoi NULL, en effet var = 0
    Mais non, ça renvoie null parce que la valeur n'a pas pu être récupérée.

    C'est quoi cette fonction getXMLValue() ?
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

  6. #6
    Membre du Club
    Inscrit en
    Septembre 2008
    Messages
    384
    Détails du profil
    Informations forums :
    Inscription : Septembre 2008
    Messages : 384
    Points : 52
    Points
    52
    Par défaut
    oui Bovino, vous avez raison

    je ne sais pas pourquoi je récupère null à la place de "0"

  7. #7
    Membre du Club
    Inscrit en
    Septembre 2008
    Messages
    384
    Détails du profil
    Informations forums :
    Inscription : Septembre 2008
    Messages : 384
    Points : 52
    Points
    52
    Par défaut
    getXMLValue() permet d'aller chercher dans un fichier xml, le contenu d'une variable ('var') qui à été envoyée par un équipement distant.

    lorsque je consulte le fichier xml, la valeur 'var' est pourtant bien remplacée par la valeur attendue, c'est étrange que le script n'arrive pas à la récupérer.


    -> http://10.0.0.200/status.xml

    --> ci joint son contenu lorsque je l'appelle directement, on voit ici que var = 1

    <response>
    <var>1</var>
    </response>

  8. #8
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Points : 91 220
    Points
    91 220
    Billets dans le blog
    20
    Par défaut
    Sans le code de getXMLValue(), difficile de t'aider !
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

  9. #9
    Membre du Club
    Inscrit en
    Septembre 2008
    Messages
    384
    Détails du profil
    Informations forums :
    Inscription : Septembre 2008
    Messages : 384
    Points : 52
    Points
    52
    Par défaut
    J'ai été un peu vite , la fenêtre "alerte" me retourne bien la valeur 1 pour var. Ca marche.

    A présent, je voudrai tout intégrer dans une ligne mais ça ne fonctionne pas, je pense avoir un pb de syntaxe quelque part :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    document.getElementById('LED').innerHTML = '<img src="LED' + getXMLValue(xmlData, 'var') +'.gif</img>">';
    Voici la fonction getXMLValue :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    // Parses the xmlResponse returned by an XMLHTTPRequest object
    //	xmlData: the xmlData returned
    //  field: the field to search for
    function getXMLValue(xmlData, field) {
    	try {
    		if(xmlData.getElementsByTagName(field)[0].firstChild.nodeValue)
    			return xmlData.getElementsByTagName(field)[0].firstChild.nodeValue;
    		else
    			return null;
    	} catch(err) { return null; }
    }

  10. #10
    Membre du Club
    Inscrit en
    Septembre 2008
    Messages
    384
    Détails du profil
    Informations forums :
    Inscription : Septembre 2008
    Messages : 384
    Points : 52
    Points
    52
    Par défaut
    Bonjour

    Auriez vous une idée pourquoi cette ligne ne fonctionne pas ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    document.getElementById('LED').innerHTML = '<img src="LED' + getXMLValue(xmlData, 'var') +'.gif</img>">';
    Je vous remercie,

  11. #11
    Rédacteur/Modérateur
    Avatar de andry.aime
    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    8 391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Ile Maurice

    Informations forums :
    Inscription : Septembre 2007
    Messages : 8 391
    Points : 15 059
    Points
    15 059
    Par défaut
    Vérifie bien la fermeture des quotes.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    document.getElementById('LED').innerHTML = '<img src="LED' + getXMLValue(xmlData, 'var') +'.gif" </img>';

  12. #12
    Expert éminent
    Avatar de Watilin
    Homme Profil pro
    En recherche d'emploi
    Inscrit en
    Juin 2010
    Messages
    3 094
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : En recherche d'emploi

    Informations forums :
    Inscription : Juin 2010
    Messages : 3 094
    Points : 6 755
    Points
    6 755
    Par défaut
    Citation Envoyé par andry.aime Voir le message
    Vérifie bien la fermeture des quotes.
    … Et des balises également
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    document.getElementById('LED').innerHTML = '<img src="LED' + getXMLValue(xmlData, 'var') + '.gif">';
    La FAQ JavaScript – Les cours JavaScript
    Touche F12 = la console → l’outil indispensable pour développer en JavaScript !

Discussions similaires

  1. Agrandir une image en fonction e la taille d'une div
    Par rolls dans le forum Mise en page CSS
    Réponses: 5
    Dernier message: 25/02/2013, 15h33
  2. [XL-2007] Selection d'une image en fonction de la valeur d'une cellule en macro
    Par chevalrv dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 02/04/2012, 11h21
  3. Réponses: 4
    Dernier message: 30/03/2012, 04h48
  4. Affichage d'une image au passage de la souris sur une image mappée
    Par Pouet24 dans le forum Général JavaScript
    Réponses: 13
    Dernier message: 09/07/2009, 09h26
  5. Réponses: 1
    Dernier message: 27/02/2008, 13h55

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