Ceci est mon code NAVBAR:
public ActionResult SectionsList() { return view(); }
3 Réponses :
Veuillez utiliser le code ci-dessous espoir que cela fonctionne pour vous merci! p> p>
var change = function () { var url = window.location.pathname; $('ul.navbar-nav a[href="' + url + '"]').parent().addClass('active'); }; change(); Load this function in the js file which is common to every page and remove class active from li. Works even when the page reloads.I hope it works for you! Thanks!
Il est en surbrillance sélectionnée mais ne retire pas la classe active plus ancienne
J'ai mis à jour votre ligne et cela fonctionne bien maintenant ('ul.navbar-nav a [href = "' '+ url +'"] '). Parent (). AddClass (' Active '). Frères et soeurs (). Removeclass ('Act Tive');
mais j'ai déroulée pour la dernière li qu'elle ne devient pas en surbrillance
pouvez-vous m'aider à ce sujet pour la dernière liste déroulante LI
Si (URL == '/ StudentResResult / admin') {$ ("div.dropdown-menu A [href =" "+ url + '"]'). Parent (). Parent (). Addclass ('Active') ; $ ('div.dropdown-menu A [href = "' + url + '"]'). AddClass ('Active'); } - comme emplacement.PathName récupère l'URL donc je suis venu avec cette solution
Placez le morceau de code modifié ci-dessous qui est testé
$(document).ready(function(){ $(".navbar-nav .nav-link").click(function (e) { e.preventDefault(); $('.nav-item').removeClass('active'); $(this).closest('.nav-item').addClass('active'); }); });
Votre code semble fonctionner comme prévu
Je pense que vous avez ajouté E.PreventDefault (); Mais c'est maintenant en surbrillance mais cela ne va pas à une page particulière à cause de ce préventif.
Après avoir retiré E.PreventDefault (), il ne souligne pas avec la classe active
mais dans href j'ai ce href = "@ Url.action (" sectionsList "," admin ")" mais ne fonctionne pas si je supprimais URL.Action, alors il fonctionne, mais je dois naviguer une autre page à travers celle-là seulement