Je veux revenir en arrière le menu de l'arbre d'une liste non ordonnée imbriquée au plus haut < li> et récupérer l'attribut "p_node" en utilisant la fonction toggle de jquery. Ainsi, par exemple, lorsque je clique sur "Annie", je veux récupérer la racine li, qui dans son cas est "mCat1" et extraire la valeur de "p_node" à utiliser dans le script. Comment puis-je accomplir cela? Merci de votre aide.jquery - Comment puis-je obtenir l'attribut de la racine, ou le plus haut < li > si je suis imbriqué profondément dans une liste non ordonnée
est Voici la liste non numérotée:
<ul id="nav>
<li type="root" p_node="39">Cat 2
<ul>
<li><a>sub cat2</a></li>
</ul>
</li>
<li type="root" p_node="40">mCat1
<ul>
<li>Subcat A
<ul>
<li>Subcat A.1
<ul>
<li><a>Annie</a></li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
</ul>
est ici une partie de la jquery j'ai essayé. le sélecteur sélectionne le fond le plus < li> qui a une balise d'ancrage:
$('#nav li:not(:has(li))>a').toggle(function() {
//show stuff
var parentEls = $(this).parents()
.map(function() {
if($(this).attr('type') == 'root')
{
var node = $(this).attr('p_node');
return node;
}
});
}, function() {
//close stuff
});
brillant! Fonctionne parfaitement. Merci de votre aide. – Ronedog
N'est-ce pas jquery sympa? :) – morgancodes
Les sélecteurs jQ * sont * brillants. Ils ont réussi à créer une sorte de "six degrés de séparation" entre chaque élément du DOM. – dclowd9901