Bonjour,
je cherche a tester si les balises <li> de ma page html possèdent des fils ... j'endend par fils des balises <ul>
Mon probleme est que lorsque le <li> encadre un <a href>, mon test me renvoi true pour ce <li>, ce qui est normal.
Page Html
Code .js
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 ... <li id="node2" noDelete="true"><a href="#">Norway</a> <ul> <li id="node3" noRename="true"><a href="#">Stavanger</a></li> <li id="node6"><a href="#">Bergen</a></li> <li id="node7"><a href="#">Oslo</a></li> </ul> </li> ...
Pour contourner je fais cela :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 var nodeId = 0; var my_tree = document.getElementById(this.idOfTree); var menuItems = my_tree.getElementsByTagName('LI'); for(var no=0;no<menuItems.length;no++){ ... if(menuItems[no].hasChildNodes() == true) { ...
Existe-t-il une méthode plus élégante ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 var subItems = menuItems[no].getElementsByTagName('UL'); if(subItems.length==0)...
Merci
Partager