繁体   English   中英

通过jQuery将“活动”类添加到下拉菜单

[英]Add class “active” to dropdown menu by jquery

我正在尝试通过jQuery添加“活动”类,因为该代码来自apx主文件。 我知道PHP,但没有尽快。

当任何人进入子菜单页面(例如Technical-Info.aspx,End-Device-Info.aspx页面)时,都需要在父级li上使用addClass( <li class="active"><a href="OverView.aspx" title="Overview">OverView</a>而不是<li><a href="OverView.aspx" title="Overview">OverView</a> )。

码-

<ol id="menu">
         <li><a href="Default.aspx" title="Home Page" style="color:#FFF">Home</a>        
        <li><a href="OverView.aspx" title="Overview">OverView</a>  

          <!-- sub menu -->
          <ol>     
            <li><a href="Technical-Info.aspx" title="Technical Info">Technical Info</a></li>
            <li><a href="End-Device-Info.aspx" title="End Device Info">End Device Info</a></li>
          </ol>
        </li><!-- end sub menu -->

        <li><a href="Register.aspx">Register To Service</a></li>
        <li><a href="Rates.aspx">Rates</a></li>

        <li><a href="#">Support</a>

          <!-- sub menu -->
          <ol>     
            <li><a href="FAQ.aspx" title="FAQ">FAQ</a></li>
            <li><a href="TOS.aspx" title="TOS">Terms Of Service</a></li>
            <li><a href="Contact_Us.aspx" title="Order the service">Contact Us</a></li>
          </ol>
        </li><!-- end sub menu -->

         <li><a href="skype:name?call" title="Call us on Skype"><img src="img/callme_small4.png" width="85px" height="85px"; /></a></li>

</ol>

您可以使用以下内容:

$("li[title=FAQ]").addClass("active");

一种替代方法是对服务器端的这些更改。 为此,您必须将每个HTML元素转换为服务器端控件。 为此,只需在每个标签中放置一个标签runat="server" ,然后添加一个ID即可识别它们。 例如:

<li><a href="OverView.aspx" title="Overview">OverView</a></li>

变成:

<li id="overviewMenu" runat="server"><a href="OverView.aspx" title="Overview">OverView</a></li>

然后在服务器端,使用遵循伪算法:

  1. 检索所有菜单并将其标记为“未激活”。
  2. 选择要标记的菜单并将其设置为“活动”。

这是一些有用的ASP.NET方法:

  1. 为了通过id获得HTML控制器服务器端,请使用以下方法: HtmlControl control = (HtmlControl) this.FindControl("controllerId"); ,其中controllerId是您的服务器端ID。 您可以使用HtmlControl泛型类型来强制转换所有HTML控件。 您将需要HtmlControl软件包System.Web.UI.HtmlControls。
  2. 要添加活动类,请使用以下命令: control.Attributes.Add("class", "active"); 若要删除,请使用以下命令: control.Attributes.Remove("class"); ;

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM