problemme su un ppel d'une fonction javascipt
salut.
j'ai créer un menu déroulant avec des listes presque tous marche bien sauf que le code javascript est exécuter même si je clique les items du sous menu
code la fonction javascript.
Code:
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
| function afficheMenu(obj){
var idMenu = obj.id;
var idSousMenu = 'sous' + idMenu;
var sousMenu = document.getElementById(idSousMenu);
/*****************************************************/
/** on cache tous les sous-menus pour n'afficher **/
/** que celui dont le menu correspondant est cliqué **/
/** où 4 correspond au nombre de sous-menus **/
/*****************************************************/
for(var i = 1; i <= 4; i++){
if(document.getElementById('sousmenu' + i) && document.getElementById('sousmenu' + i) != sousMenu){
document.getElementById('sousmenu' + i).style.display = "none";
}
}
if(sousMenu){
//alert(sousMenu.style.display);
if(sousMenu.style.display == "block"){
sousMenu.style.display = "none";
}
else{
sousMenu.style.display = "block";
}
}
} |
Code XHTML
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
| <ul id="menu">
<li id="menu1" class="menu" onclick="afficheMenu(this)"><a href="#">Véhicules</a>
<ul id="sousmenu1" style="display:none">
<li class="sousmenu"><a href="ajoutvh.php">Ajouter</a></li>
<li class="sousmenu"><a href="#">Modifier</a></li>
<li class="sousmenu"><a href="listevh.php">Lister</a></li>
<li class="sousmenu"><a href="#">Supprimer</a></li>
</ul></li>
<li id="menu2" class="menu" onclick="afficheMenu(this)"><a href="#">Clients</a>
<ul id="sousmenu2" style="display:none">
<li class="sousmenu"><a href="#">Ajouter</a></li>
<li class="sousmenu"><a href="#">Modifier</a></li>
<li class="sousmenu"><a href="#">Lister</a></li>
<li class="sousmenu"><a href="#">Supprimer</a></li>
</ul></li>
<li id="menu3" class="menu"><a href="#">Dossiers</a></li>
<li id="menu4" class="menu"><a href="#">Quiter</a></li>
</ul> |
le problèmes c'est que si je clique l'items ajouter ou modifier je ne veut pas que le sous menu soit cacher.
a+.