[DOM] hasChildNodes() toujours true
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:
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>
... |
Code .js
Code:
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) {
... |
Pour contourner je fais cela :
Code:
1 2 3
|
var subItems = menuItems[no].getElementsByTagName('UL');
if(subItems.length==0)... |
Existe-t-il une méthode plus élégante ?
Merci