0

当我单击 asp.net 母版页中的子子菜单项或主项时,如何设置活动菜单项颜色。

我的代码是(母版页源)

<ul class="art-menu">
      <li><a href="#" class="{ActiveItem}"><span class="l"></span><span class="r"></span><span
                            class="t">Submission</span> </a>
                            <ul>
                                <li><a href="../QuoteStatus.aspx">Search Submission</a></li>
                                <li><a href="../NewQuote.aspx">New Submission</a></li>
                            </ul>
                        </li>
                        <li><a href="#"><span class="l"></span><span class="r"></span><span class="t">Requests</span></a>
                            <ul>
                                <li><a href="../Requests/IssueCertificates.aspx">Issue Certificates</a></li>
                                <li><a href="../Requests/QuoteCancellation.aspx">Cancellation</a></li>
                                <li><a href="../Requests/LossRuns.aspx">Loss Runs</a></li>
                                <li><a href="../Requests/Endorsements.aspx">Endorsements</a></li>
                            </ul>
                        </li>
                        <li><a href="#"><span class="l"></span><span class="r"></span><span class="t">Reports</span></a>
                        </li>
                        <li><a href="#"><span class="l"></span><span class="r"></span><span class="t">Configuration</span></a>
                            <ul>
                                <li><a href="../Administration/UserInformation.aspx">User Information</a></li>
                                <li><a href="../SignUp.aspx">New User</a></li>
                                <li><a href="../Administration/AdminSettings.aspx">Admin Settings</a></li>
                            </ul>
                        </li>
</ul>

如何编写代码,请给我建议...

谢谢你

4

2 回答 2

4

这就是我所做的。可能有更好的方法。你可以试试。

注意:您的链接应该有runat="server",以便您可以从代码隐藏中访问它们

protected void Page_Load(object sender, EventArgs e)
{            
    string curlink = Request.RawUrl;

    if (curlink.Contains("/administration/school")) 
    {
        schoolinfolink.Attributes["class"] = "selected";
    }
    else if (curlink.Contains("/administration/result"))
    {
        resultlink.Attributes["class"] = "selected";
    }
    else if (curlink.Contains("/administration/staff"))
    {
       staffslink.Attributes["class"] = "selected";
    }

}
于 2012-08-11T13:00:18.213 回答
0

我不熟悉 ASP ,但在 php 中,我将通过添加一个检查哪个页面是当前页面的函数来处理它。我会在 HTML 之上调用它,然后你就可以使用它了。

算法:

1.获取当前网址

2.从中获取当前文件名

3.将当前文件名保存为变量(“selectedPage”)

4.打印菜单时,使用条件将“selectedPage”与项目的文件名进行比较。

考虑使用数组和循环打印菜单(因此,您只需编写一个 X 条件)

于 2012-08-11T11:49:08.197 回答