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 :

Boucle if multiple


Sujet :

JavaScript

  1. #1
    Membre éclairé Avatar de spawns
    Homme Profil pro
    Inscrit en
    Juillet 2004
    Messages
    558
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Juillet 2004
    Messages : 558
    Par défaut Boucle if multiple
    slt à tous,
    j'ai un script pour affichager la date
    et je l'utilise pour créer une boucle pour afficher ou cacher des div en fonction du jour et du mois, mais
    Bien évidement cela ne fonctionne pas
    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
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    <SCRIPT LANGUAGE="JavaScript">
    navvers = navigator.appVersion.substring(0,1);
    if (navvers > 3)
    navok = true;
    else
    navok = false;
     
    today = new Date;
    numero = today.getDate();
    if (numero<10)
    numero = "0"+numero;
    mois = today.getMonth();
    if (navok)
    annee = today.getFullYear();
    else
    annee = today.getYear();
    mois++;
    if (mois < 10)
    mois = "0" + mois;
    messageDate = numero + "/" + mois + "/" + annee;
    final=numero + "/" + mois;
     
    if ((final="29/01")
    visu="block";
    elseif (final="29/02")
    visu="block";
    elseif (final="29/03")
    visu="block";
    elseif (final="29/04")
    visu="block";
    else
    var visu="none";
     
    </SCRIPT>
     
     
    <div style='border:1px solid black; display:
    <SCRIPT LANGUAGE="JavaScript">
    document.write(visu);
    </SCRIPT>'>div N°1</div><br />
    <div style='border:1px solid black; display:
    <SCRIPT LANGUAGE="JavaScript">
    document.write(visu);
    </SCRIPT>'div N°2</div><br />
    <div style='border:1px solid black; display:
    <SCRIPT LANGUAGE="JavaScript">
    document.write(visu);
    </SCRIPT>'>div N°3</div><br />
    <div style='border:1px solid black; display:
    <SCRIPT LANGUAGE="JavaScript">
    document.write(visu);
    </SCRIPT>'>div N°4</div>

    Ou est mon erreur ?
    Merci de votre aide

  2. #2
    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 658
    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 658
    Billets dans le blog
    1
    Par défaut
    Oulà ...

    pour les if multiples ..; regarde plutot du coté de switch ...

    ensuite les document.write dans le body .... no comment ...

    regarde du coté de innerHTML
    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 !

  3. #3
    Membre Expert
    Inscrit en
    Septembre 2002
    Messages
    2 307
    Détails du profil
    Informations forums :
    Inscription : Septembre 2002
    Messages : 2 307
    Par défaut
    ==

  4. #4
    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 658
    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 658
    Billets dans le blog
    1
    Par défaut
    lol Matt je n'ai pas pu aller aussi loin, tellement mal aux yeux ...
    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 !

  5. #5
    Membre éclairé Avatar de spawns
    Homme Profil pro
    Inscrit en
    Juillet 2004
    Messages
    558
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Juillet 2004
    Messages : 558
    Par défaut
    je sais que ca doit etre dur pour des pro
    mais je ne connait pas javascript

  6. #6
    Membre Expert
    Inscrit en
    Septembre 2002
    Messages
    2 307
    Détails du profil
    Informations forums :
    Inscription : Septembre 2002
    Messages : 2 307

  7. #7
    Membre éclairé Avatar de spawns
    Homme Profil pro
    Inscrit en
    Juillet 2004
    Messages
    558
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Juillet 2004
    Messages : 558
    Par défaut
    J'ai bien utilisé le switch
    mais cela ne fonctionne pas plus, pour le innerHTML j'ai pas tout compris.
    cela affiche bien le mot "block" puis le 1er div, cache le second mais affiche le troisieme et les suivant alors qu'ils devraient être cachées.

    ou est mon erreur

    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
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    <SCRIPT LANGUAGE="JavaScript">
     
    navvers = navigator.appVersion.substring(0,1);
    if (navvers > 3)
    	navok = true;
    else
    	navok = false;
     
    today = new Date;
    numero = today.getDate();
    if (numero<10)
    	numero = "0"+numero;
    mois = today.getMonth();
    if (navok)
    	annee = today.getFullYear();
    else
    	annee = today.getYear();
    mois++;
    if (mois < 10)
    	mois = "0" + mois;
    messageDate = numero + "/" + mois + "/" + annee;
    final=numero + "/" + mois;
     
     switch(final)
        {
        case "29/01" :
            document.write("block");
            break;
        case "29/02" :
            document.write("block");
            break;
        case "29/03" :
            document.write("block");
            break;
        default :
            document.write("none");
        } 
     
    </SCRIPT>
     
    <div style='border:1px solid black; display:
    <SCRIPT LANGUAGE="JavaScript">
    document.write(visu);
    </SCRIPT>
    '>div N°1</div><br />
     
    <div style='border:1px solid black; display:
    <SCRIPT LANGUAGE="JavaScript">
    document.write(visu);
    </SCRIPT>'div N°2</div><br />
     
    <div style='border:1px solid black; display:
    <SCRIPT LANGUAGE="JavaScript">
    document.write(visu);
    </SCRIPT>'>div N°3</div><br />

  8. #8
    Expert confirmé
    Avatar de le_chomeur
    Profil pro
    Développeur informatique
    Inscrit en
    Février 2006
    Messages
    3 653
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Février 2006
    Messages : 3 653
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    document.getElementById('id de ta div').innerHTML = 'block'

  9. #9
    Membre éclairé Avatar de spawns
    Homme Profil pro
    Inscrit en
    Juillet 2004
    Messages
    558
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Juillet 2004
    Messages : 558
    Par défaut
    Citation Envoyé par le_chomeur Voir le message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    document.getElementById('id de ta div').innerHTML = 'block'
    je l'intègre a quel niveau ?
    a la place du
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <SCRIPT LANGUAGE="JavaScript">
    document.write(visu);
    </SCRIPT>
    ???

    le blem c'est que "block" est defini dans mon switch

  10. #10
    Expert confirmé
    Avatar de le_chomeur
    Profil pro
    Développeur informatique
    Inscrit en
    Février 2006
    Messages
    3 653
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Février 2006
    Messages : 3 653
    Par défaut
    oui , en ajoutant un id a l'endroit ou tu voudras voir afficher "block"

  11. #11
    Membre éclairé Avatar de spawns
    Homme Profil pro
    Inscrit en
    Juillet 2004
    Messages
    558
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Juillet 2004
    Messages : 558
    Par défaut
    cela ne fonctionne pas car il faut que cela marque block seulement par rapport au switch de mon code.

    revoila mon code modifié :

    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
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    <SCRIPT LANGUAGE="JavaScript">
     
    navvers = navigator.appVersion.substring(0,1);
    if (navvers > 3)
    	navok = true;
    else
    	navok = false;
     
    today = new Date;
    numero = today.getDate();
    if (numero<10)
    	numero = "0"+numero;
    mois = today.getMonth();
    if (navok)
    	annee = today.getFullYear();
    else
    	annee = today.getYear();
    mois++;
    if (mois < 10)
    	mois = "0" + mois;
    messageDate = numero + "/" + mois + "/" + annee;
    final=numero + "/" + mois;
     
     switch(final)
        {
        case "29/01" :
            document.writeln("block");
            break;
        case "29/02" :
            document.writeln("block");
            break;
        case "29/03" :
            document.writeln("block");
            break;
        default :
            document.writeln("none");
        } 
     
    </SCRIPT>
     
    <div id=1 style='border:1px solid black; display:
    <SCRIPT LANGUAGE="JavaScript">
    document.getElementById('1').innerHTML = 'block';
    </SCRIPT>
    '>div N°1</div><br />
     
    <div id =2 style='border:1px solid black; display:
    <SCRIPT LANGUAGE="JavaScript">
    document.getElementById('2').innerHTML = 'block';
    </SCRIPT>
    '>div N°2</div><br />
     
    <div id=3 style='border:1px solid black; display:
    <SCRIPT LANGUAGE="JavaScript">
    document.getElementById('3').innerHTML = 'block';
    </SCRIPT>'>div N°3</div>

  12. #12
    Expert confirmé
    Avatar de le_chomeur
    Profil pro
    Développeur informatique
    Inscrit en
    Février 2006
    Messages
    3 653
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Février 2006
    Messages : 3 653
    Par défaut


    c'est quoi ça ??????

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    <div id=1 style='border:1px solid black; display:
    <SCRIPT LANGUAGE="JavaScript">
    document.getElementById('1').innerHTML = 'block';
    </SCRIPT>
    '>
    a quel moment veux tu que le contenu de ta div soit "block" ??

  13. #13
    Membre éclairé Avatar de spawns
    Homme Profil pro
    Inscrit en
    Juillet 2004
    Messages
    558
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Juillet 2004
    Messages : 558
    Par défaut
    Par rapport a ma boucle plus haut

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     switch(final)
        {
        case "29/01" :
            document.writeln("block");
            break;
        case "29/02" :
            document.writeln("block");
            break;
        case "29/03" :
            document.writeln("block");
            break;
        default :
            document.writeln("none");
        }
    en gros des que ma variable final correspond a une case ca affiche "block", sinon ca affiche "none"

  14. #14
    Expert confirmé
    Avatar de le_chomeur
    Profil pro
    Développeur informatique
    Inscrit en
    Février 2006
    Messages
    3 653
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Février 2006
    Messages : 3 653
    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
    19
     
     switch(final)
        {
        case "29/01" :
            document.getElementById('1').innerHTML = 'block';
     
            break;
        case "29/02" :
            document.getElementById('1').innerHTML = 'block';
     
            break;
        case "29/03" :
            document.getElementById('1').innerHTML = 'block';
     
            break;
        default :
    document.getElementById('1').innerHTML = '';
     
        }

  15. #15
    Membre éclairé Avatar de spawns
    Homme Profil pro
    Inscrit en
    Juillet 2004
    Messages
    558
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Juillet 2004
    Messages : 558
    Par défaut
    Ok, j'ai compris pour le innerHTML
    mais le probleme c'est l'affichage du "block"
    qui dois se faire la ou j'ai mis les nombres.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    <div id=1 style='border:1px solid black; display:1'>div N°1</div><br />
     
    <div id=2 style='border:1px solid black; display:2'>div N°2</div><br />
     
    <div id=3 style='border:1px solid black; display:3'>div N°3</div><br />
    de plus dans la boucle a la fin je ne peux pas mettre un nom de ID
    car il y a plusieurs tableau a cacher

    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
     
      switch(final)
        {
        case "29/01" :
            document.getElementById('1').innerHTML = 'block';
     
            break;
        case "29/02" :
            document.getElementById('2').innerHTML = 'block';
     
            break;
        case "29/03" :
            document.getElementById('3').innerHTML = 'block';
     
            break;
        default :
    document.getElementById('???').innerHTML = 'none';
     
        }

  16. #16
    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 658
    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 658
    Billets dans le blog
    1
    Par défaut
    display:1

    très créatif ....
    mais il ne faut vraiment pas aller chercher aussi loin ...
    diplay il faut se limiter à block, none ou inline pour des divs ...

    de plus un id ne doit pas être numérique
    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 !

  17. #17
    Membre éclairé Avatar de spawns
    Homme Profil pro
    Inscrit en
    Juillet 2004
    Messages
    558
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Juillet 2004
    Messages : 558
    Par défaut
    j'ai changer le nom des ID mais ca change rien

    voila mon code final qui ne marche pas

    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
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    <SCRIPT LANGUAGE="JavaScript">
     
    navvers = navigator.appVersion.substring(0,1);
    if (navvers > 3)
    	navok = true;
    else
    	navok = false;
     
    today = new Date;
    numero = today.getDate();
    if (numero<10)
    	numero = "0"+numero;
    mois = today.getMonth();
    if (navok)
    	annee = today.getFullYear();
    else
    	annee = today.getYear();
    mois++;
    if (mois < 10)
    	mois = "0" + mois;
    messageDate = numero + "/" + mois + "/" + annee;
    final=numero + "/" + mois;
     
     
      switch(final)
        {
        case "29/01" :
            document.getElementById('divid1').innerHTML ='block';
     
            break;
        case "29/02" :
            document.getElementById('divid2').innerHTML = 'block';
     
            break;
        case "29/03" :
            document.getElementById('divid3').innerHTML = 'block';
     
            break;
        default :
    document.getElementById('divid3').innerHTML ='none';
     
        }
     
     
    </SCRIPT>
     
    <body>
    <div id=divid1>div N°1</div><br />
     
    <div id=divid2>div N°2</div><br />
     
    <div id=divid3>div N°3</div><br />

  18. #18
    Membre éclairé Avatar de spawns
    Homme Profil pro
    Inscrit en
    Juillet 2004
    Messages
    558
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Juillet 2004
    Messages : 558
    Par défaut
    Finalement j'ai résolu mon problème.
    J'ai procédé avec des writeIn, c'est pas hyper propre parait il mais je suis très loin d'être un spécialiste javascript.

    Merci à tous

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

Discussions similaires

  1. Boucle do while avec des conditions multiples
    Par UrSuS AmErIcAnUs dans le forum C
    Réponses: 4
    Dernier message: 19/06/2008, 16h13
  2. recherche multiple par boucle
    Par magicfrom dans le forum Macros et VBA Excel
    Réponses: 16
    Dernier message: 26/05/2008, 11h26
  3. [Débutant] Besoin d'aide boucle multiple
    Par Flaherty Mc Coillean dans le forum MATLAB
    Réponses: 1
    Dernier message: 13/12/2007, 17h48
  4. Calcul élément de trajectoire, dans boucle multiple
    Par baptbapt dans le forum Général VBA
    Réponses: 27
    Dernier message: 02/08/2006, 09h48
  5. Array, Boucle : Multiplication de l'Array
    Par moijhd dans le forum Flash
    Réponses: 4
    Dernier message: 15/06/2006, 13h21

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