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 :

Affichage de sous menus en Javascript


Sujet :

JavaScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Futur Membre du Club
    Inscrit en
    Juin 2010
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Juin 2010
    Messages : 3
    Par défaut Affichage de sous menus en Javascript
    Bonjour,j'ai implémenté une page dynamique contenant des menus avec leurs sous-menus en faisant appelle à une fonction montre(id).Tous fonctionne bien mais le problème c'est que lorsque j'ouvre deux menus avec leurs sous-menus et je choisis parsuite de cliquer sur l'un des sous menus de ces deux menus ouverts, le menu qui contient le sous menus cliqué reste ouvert(c'est juste)mais l'autre menu que j'ai déjà ouvert se referme.
    Meme chose lorsque j'ouvre un menu avec des sous menus et je clique sur un menu sans sous menus, le menus avec les sous menus se referme.
    En fait c'est dû au rechargement de la page.
    Voici mon code aidez moi SVP:
    Code php : 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
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    <?php require("config.php");
    mysql_connect($vhost, $vuser, $vpassword);
    mysql_select_db($vdb);
    $requete = mysql_query("SELECT * FROM menu order by ordrerubrique ASC") ;$thisPage ="";if(isset($_GET['produits']))$thisPage = $_GET['produits'];
    ?>
    <div class="tetemenu" >
    <div class="txtprod">P R O D U I T S</div>
    <?php $i=1;while ($result = mysql_fetch_object($requete))
    { echo'<div >';
    $menu=$result->rubrique; $idrb=$result->idrb;
    $req1=mysql_query("SELECT * FROM sousmenu where idrb='$idrb'") ;
    $rstreq1 = mysql_fetch_object($req1);
    if(isset($rstreq1->id))
    {
    echo'<div class="element_menu" id="menu'.$i.'"><ul>';?>
     
    <li>
    <a onclick="javascript:montre('<?php echo "smenu".$i;?>');iconemenu('<?php echo "menu".$i;?>');" style="cursor:pointer;"><b>
    <?php echo $result->rubrique; ?></b>
    </a>
    </li></ul> </div><?php echo'<div class="elementsousmenu" >
    <ul id="smenu'.$i.'">';
    $req = mysql_query("SELECT * FROM sousmenu where idrb='$result->idrb'") ;
    while ($resultat= mysql_fetch_object($req))
    {
    $smenu=$resultat->sousmenu;
    echo '<li style="list-style:square;color:#41A8ED;margin-left:16px" id="sousmenu">
    <a href="index.php?idrb='.$result->idrb.'&amp;rubrique='.$resultat->id.'&page=produits&produits='.$smenu.'&ID=smenu'.$i.'">'.$smenu.'</a></li>';
    }
     
    echo '</ul></div>';}
     
    else
    { echo '<div class="rubrique">'; ?>
     
    <li style="list-style:circle;color:#41A8ED;margin-left:12px">
    <?php
    echo("<a href='index.php?idrb=$result->idrb&amp;rubrique=$result->rubrique&amp;param=menu' >$result->rubrique</a>") ;
    echo'</li>';
     
     
    echo'</div>';}$i++;
    }?>
    </div></div>
     
    <script type="text/javascript"><!--
    for (var i = 1; i<=12; i++)
    {
    if (document.getElementById('smenu'+i))
    {
    document.getElementById('smenu'+i).style.display='none';
    }
    }
    <script language="javascript">
     
    window.onload=montre("<?PHP echo $_GET['ID']; ?>");
    function montre(id) {var menu=new Array();var d = document.getElementById(id);
    var identifiant=id.replace("s","");
     
     
    var identif = document.getElementById(identifiant);
     
    for (var i = 1; i<=9; i++) {
    if (document.getElementById('menu'+i))
     
    {
    if(document.getElementById('menu'+i).className=="div5")
    {
    document.getElementById('smenu'+i).style.display="block";
    menu.push('smenu'+i);
    }
    if(document.getElementById('smenu'+i).style.display==""){}
     
    }
    }
    if (d) {if(d.style.display=='block')
     
    {
    d.style.display='none';
    }
     
    else
    {
    d.style.display='block';
    }
    if(identif.className=='div5')identif.className='element_menu';
    else identif.className='div5';
     
     
    } }//--></script>

  2. #2
    Membre Expert
    Avatar de RomainVALERI
    Homme Profil pro
    POOête
    Inscrit en
    Avril 2008
    Messages
    2 652
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : POOête

    Informations forums :
    Inscription : Avril 2008
    Messages : 2 652
    Par défaut
    Il me semble que tu as assez peu de chances de te faire aider si tu ne joues pas le jeu selon les règles (pas de code serveur stp)

Discussions similaires

  1. Mauvais affichage des sous-menus
    Par laurentSc dans le forum Mise en page CSS
    Réponses: 5
    Dernier message: 30/05/2014, 17h23
  2. [Javascript] Menus et sous menus
    Par guiguistuder dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 09/06/2006, 15h52

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