Javascript jQuery和HTML如何在下拉菜单中使用存储

Javascript jQuery和HTML如何在下拉菜单中使用存储,javascript,html,jquery,drop-down-menu,Javascript,Html,Jquery,Drop Down Menu,我有个问题要问你 我有一个带有下拉菜单“切换按钮”的侧边栏。HTML代码如下所示 <div class="container-fluid"> <div class="row"> <nav class="col-md-2 d-none d-md-block bg-dark sidebar"> <div class="sidebar-sticky"> <ul class="nav flex-colu

我有个问题要问你

我有一个带有下拉菜单“切换按钮”的侧边栏。HTML代码如下所示

<div class="container-fluid">
   <div class="row">
     <nav class="col-md-2 d-none d-md-block bg-dark sidebar">
       <div class="sidebar-sticky">
         <ul class="nav flex-column">
             <li class="nav-item"  id="sidebar">
                 <a class="sidebar-heading d-flex justify-content-between align-items-center px-3 mt-4 mb-1" href="#firstSubmenu" data-toggle="collapse"
                 aria-expanded="false" class="dropdown-toggle">Performance Monitoring<span data-feather="plus-circle"></span></a>
                 <ul class="collapse list-unstyled" id="firstSubmenu">
                     <li>
                         <a class="nav-link" href="#">
                             <span data-feather="monitor"></span>
                             Dashboard</a>
                     </li>
                     <li>
                         <a class="nav-link" href="/conto_economico">
                             <span data-feather="trending-up"></span>
                             Conto Economico</a>
                     </li>
                    ....

您已经将容器设置为li元素,并且正在尝试在锚元素集中查找其索引。您需要在li元素的集合中查找索引。像这样

var container = $(this).closest("li");
var selected_item_index = $("#sidebar li").index(container);
此外,在使用setStorage将li类设置为活动后,您可能希望从其他同级元素中删除活动类。此外,用于getstorage和setstorage的键名也不同。它们应该是相同的

 $("#sidebar li").eq(parseInt(localStorage.getItem("sidebar_selected "))).addClass("active").siblings().removeClass('active');

我已经尝试了你的代码,但仍然不起作用。我也用你的建议更新了我的答案,以检查是否有一些建议errors@FedericoDeMarco:你能在上面用最少的HTML和JS包含工作代码段吗?可以调试和修复wayOkey@Milind Anantwar我用完整的html和JS编辑的问题。我希望现在可以检查我的错误用于setstorage和getstorage的键名不同。它应该是相同的,而不是你能更好地解释我修改你的答案吗?
 $("#sidebar li").eq(parseInt(localStorage.getItem("sidebar_selected "))).addClass("active").siblings().removeClass('active');