加载 ASP.NET 页面时动态更改标记

发布于 2024-08-09 21:25:40 字数 410 浏览 6 评论 0原文

ASP.NET v2

我有 MasterPage,其中包括网站的导航栏,大致如下:

<ul>
  <li id="current"><a href="overview.aspx">Home</a></li>
  <li><a href="users.aspx">Users</a></li>
  <li><a href="courses.aspx">Courses</a></li>
</ul>

css 样式列表和 id="current" 需要突出显示当前页面。操作标记的最佳方法是什么,以便在每个页面中为相关列表项分配 id="current" 。

ASP.NET v2

I have MasterPage which includes the navigation bar for the site along the lines of:

<ul>
  <li id="current"><a href="overview.aspx">Home</a></li>
  <li><a href="users.aspx">Users</a></li>
  <li><a href="courses.aspx">Courses</a></li>
</ul>

The css styles the list and id="current" is required to highlight the current page. What is the best way to manipulate the markup so the relevant list item has is assigned id="current" within each page.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

友欢 2024-08-16 21:25:40

使用站点地图或在 Page.prerender 方法后面的代码中创建控件。

你的 html 应该是这样的:

<ul>
    <li runat="server" id="navul_home">home</li>
    <li runat="server" id="navul_users">users</li>
    <li runat="server" id="navul_courses">courses</li>
</ul>

隐藏的代码应该是:

Protected Sub Page_PreRender(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.PreRender
    Dim Currentpage As String = "users"
    navul_home.Attributes.Clear()
    navul_home.Attributes.Clear()
    navul_home.Attributes.Clear()
    Select Case Currentpage
        Case "home"
            navul_home.Attributes.Add("id", "current")
        Case "users"
            navul_users.Attributes.Add("id", "current")
        Case "courses"
            navul_courses.Attributes.Add("id", "current")
    End Select
End Sub

Either use a sitemap or create the control in your code behind in the Page.prerender method.

Your html should look like this:

<ul>
    <li runat="server" id="navul_home">home</li>
    <li runat="server" id="navul_users">users</li>
    <li runat="server" id="navul_courses">courses</li>
</ul>

And the codebehind should be:

Protected Sub Page_PreRender(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.PreRender
    Dim Currentpage As String = "users"
    navul_home.Attributes.Clear()
    navul_home.Attributes.Clear()
    navul_home.Attributes.Clear()
    Select Case Currentpage
        Case "home"
            navul_home.Attributes.Add("id", "current")
        Case "users"
            navul_users.Attributes.Add("id", "current")
        Case "courses"
            navul_courses.Attributes.Add("id", "current")
    End Select
End Sub
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文