2010-03-03 9 views
2

J'ai une chose liste de menu comme ceci:jQuery pour sélectionner un élément dans une liste?

<ul class="submenuList"> 
    <li><a onclick="loadItem('Blue%20Orchid%20Press')" id="Blue%20Orchid%20Press">class="on">Blue Orchid Press</a></li> 
    <li><a onclick="loadItem('Brilliant%20Telecommunications')" id="Brilliant%20Telecommunications" class="off">Brilliant Telecommunications</a></li> 
    <li><a onclick="loadItem('CBT%20Systems%201')" id="CBT%20Systems%201" class="off">CBT Systems 1</a></li> 
</ul> 

Un élément de la liste sélectionnée a une class = "on". Ce que je veux faire est de trouver l'élément suivant dans la liste après celui actuellement sélectionné, et mettre sa classe à "on" et déclencher c'est "onclick", et mettre le courant à "off".

Toute aide appréciée!

mise à jour:

<div id="menu"> 
    <div id="main_menu" style="display: block;"><ul><li><a onclick="loadSubMenu('f')" id="f" class="off">featured</a></li><li><a onclick="loadSubMenu('a')" id="a" class="off">advertising</a></li><li><a onclick="loadSubMenu('p')" id="p" class="on">print</a></li><li><a onclick="loadSubMenu('w')" id="w" class="off">web</a></li></ul></div> 
    <br clear="all"><hr><br clear="all"> 
    <div id="sub_menu" style="display: block;"><ul class="submenuList"><li><a onclick="loadItem('Blue%20Orchid%20Press')" id="Blue%20Orchid%20Press" class="on">Blue Orchid Press</a></li><li><a onclick="loadItem('Brilliant%20Telecommunications')" id="Brilliant%20Telecommunications" class="off">Brilliant Telecommunications</a></li><li><a onclick="loadItem('CBT%20Systems%201')" id="CBT%20Systems%201" class="off">CBT Systems 1</a></li><li><a onclick="loadItem('CBT%20Systems%202')" id="CBT%20Systems%202" class="off">CBT Systems 2</a></li></ul></div> 
    </div> 

Répondre

3

Vous pouvez le faire:

$("#sub_menu .on").removeClass("on").addClass("off").parent("li") 
     .next().children("a").addClass("on").click(); 
+0

C'est ce que j'aime jQuery. –

+0

J'ai été sur cette toute la journée sans résultats et vous y avez répondu en 30 secondes! Impressionnant. Merci Nick! Le seul tweak dont j'ai besoin, c'est qu'il y a 2 divs qui ont des UL - "menu" & "sub_menu". Je veux qu'il affecte "sub_menu". En ce moment, il frappe "menu", probablement parce que c'est le premier div. – Jonathan

+0

@Jonathan - Si vous mettez à jour votre question avec ce code HTML, je vais ajuster le sélecteur au travail. –

Questions connexes