如何将class =“active”设置为活动页面

时间:2010-12-03 13:56:48

标签: java jsp

我正在设计一个我正在使用jsp页面的应用程序。现在我需要一些东西来指示哪个是当前正在显示的页面。基本上,我想要一个包含每个页面的菜单,我在当前页面上放置class =“active”。

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

2 个答案:

答案 0 :(得分: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>Menu为具有属性linkname以及${item.link}的bean返回home.jspcontact.jsp之类的路径名(或者如果您使用的是控制器servlet,homecontact等。)

fn:substring()摆脱了领先的斜杠。 EL中的条件运算符?:仅在条件为真时打印类,否则不打印。

答案 1 :(得分:0)

您应该获取当前网址

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

然后在菜单中,如果当前URL(或者从url检索“当前页面”)与菜单元素(按标题,id ...)匹配,则可以在元素上设置class =“active”想要“活跃”