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

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Inscrit en
    Septembre 2008
    Messages
    384
    Détails du profil
    Informations forums :
    Inscription : Septembre 2008
    Messages : 384
    Par défaut Afficher une image en fonction de l'état d'une variable
    Bonjour,

    Je cherche à faire afficher une image lorsqu'une variable prend la valeur '1' et autre image lorsque cette meme variable prend la valeur '0'

    Ma page contient 100 variables :

    ~sensor_favorite(1)~
    ...
    ~sensor_favorite(100)~

    La valeur entre ~ ~ est donc soit 0 ou 1


    Quel type de code javascript me permettrait de remplacer ces 100 variables par 100 petites images appelées favorite_1.png ou favorite_0.png ?

    je voulais par exemple faire quelquechose dans une boucle for du type :
    mais ça ne fonctionne pas ...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <span id ="FAV_1">?</span>
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <script type="text/javascript">
    document.getElementById('FAV_1').innerHTML = '<img src="favorite_' + '~sensor_favorite(1)~' + '.png">';
    </script>
    Je vous remercie pour votre aide,

  2. #2
    Expert confirmé
    Avatar de sekaijin
    Homme Profil pro
    Urbaniste
    Inscrit en
    Juillet 2004
    Messages
    4 205
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Urbaniste
    Secteur : Santé

    Informations forums :
    Inscription : Juillet 2004
    Messages : 4 205
    Par défaut
    les tableaux ça existe

  3. #3
    Membre éclairé
    Inscrit en
    Septembre 2008
    Messages
    384
    Détails du profil
    Informations forums :
    Inscription : Septembre 2008
    Messages : 384
    Par défaut
    Bonjour sekaijin

    Pouvez vous être plus précis et me donner un exemple svp.

    Merci à vous

  4. #4
    Membre éclairé
    Inscrit en
    Septembre 2008
    Messages
    384
    Détails du profil
    Informations forums :
    Inscription : Septembre 2008
    Messages : 384
    Par défaut
    Cette boucle ne fonctionne pas, je ne sais pas pourquoi :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    <!-- Affichage de l'icone Favoris favorite_0.png ou favorite_1.png en fonction de l'état de chaque variable : ~sensor_favorite(i)~ //-->
     
    <script language="JavaScript" type="text/javascript">
    for(i = 1; i < 3; i++)
    document.getElementById('FAV_'+i).innerHTML = '<img src="favorite_' + '~sensor_favorite(' +i ')~' + '.png">';
    </script>
    Par contre sans boucle avec un appel individuel ça fonctionne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <script language="JavaScript" type="text/javascript">
    document.getElementById('FAV_1').innerHTML = '<img src="favorite_' + '~sensor_favorite(1)~' + '.png">';
    </script>
    Pouvez vous m'indiquer ce qui ne va pas dans la boucle svp ?

  5. #5
    Membre très actif
    Homme Profil pro
    bricoleur par les mots
    Inscrit en
    Avril 2015
    Messages
    744
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 80
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : bricoleur par les mots
    Secteur : Distribution

    Informations forums :
    Inscription : Avril 2015
    Messages : 744
    Par défaut
    jour

    il manque un signe +

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    '<img src="favorite_~sensor_favorite('+i+')~.png">';

  6. #6
    Membre éclairé
    Inscrit en
    Septembre 2008
    Messages
    384
    Détails du profil
    Informations forums :
    Inscription : Septembre 2008
    Messages : 384
    Par défaut
    Avec ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    <!-- Affichage de l'icone Favoris favorite_0.png ou favorite_1.png en fonction de l'état de chaque variable : ~sensor_favorite(i)~ //-->
     
    <script language="JavaScript" type="text/javascript"> for(i = 1; i < 11; i++)
    document.getElementById('FAV_'+i).innerHTML = '<img src="favorite_' + '~sensor_favorite(' +i+ ')~.png">';
    </script>
    L'adresse de l'image n°1 dans l'explorateur à bien pour adresse : /favorite_~sensor_favorite(1)~.png
    par contre, avec ce principe la variable ~sensor_favorite(1)~ n'est plus remplacée par sa valeur qui doit être '0' ou '1'


    Bizarrement, le fait de l'intégrer dans une boucle 'for' pose donc pb.

    Par contre si je remplace la boucle 'for' par cette ligne, l'image n°1 apparait correctement :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    document.getElementById('FAV_1').innerHTML = '<img src="favorite_' + '~sensor_favorite(1)~' + '.png">';

Discussions similaires

  1. Insérer une image en fonction de la valeur d'une cellule
    Par tomatotep dans le forum Macros et VBA Excel
    Réponses: 0
    Dernier message: 06/03/2016, 16h34
  2. 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
  3. [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
  4. Afficher une image en fonction de l'état d'une variable
    Par lcoulon dans le forum Général JavaScript
    Réponses: 11
    Dernier message: 02/05/2011, 19h25
  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