2010-12-03 44 views
2

我正在设计一个应用程序,使用jsp页面。现在我需要显示哪些是当前正在显示的页面。基本上,我希望每个页面都有一个菜单,在该页面上我将class =“active”放在当前页面上。如何将class =“active”设置为活动页面

我该怎么做?有什么建议么? 谢谢!

回答

0

你应该得到当前的URL

<% String URL = request.getRequestURL(); %> 

然后你可以设置类=“主动”的元素上的菜单,如果当前的URL(或者,检索“当前页”从URL)匹配菜单元素(标题,ID ...)你想成为 “活跃”

+0

嗯,似乎没有工作。我希望它有助于当我现在是多么下面张贴的例子:

  • " alt="cal" width="20" height="20" class="icon" />
  • 2010-12-03 15:36:42

    3

    开球例如:

    <c:set var="currentPage" value="${fn:substring(pageContext.request.servletPath, 1, -1)}" /> 
    <ul> 
        <c:forEach items="${bean.menu}" var="item"> 
         <li><a href="${item.link}"${item.link == currentPage ? ' class="active"' : ''}>${item.name}</li> 
        </c:forEach> 
    </ul> 
    

    这是假定${bean.menu}是一个List<Menu>,T他Menu要与性能linkname${item.link}豆返回路径名像home.jspcontact.jsp(或者,如果你使用一个控制器servlet,homecontact等)。

    fn:substring()摆脱了主导斜线。 EL中的条件运算符?:仅在条件为真时才打印类,否则不会。