2010-12-03 2 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" />
  • 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> 
    

    이 t List<Menu>, 수 ${bean.menu}을 가정 그는 home.jsp, contact.jsp 같은 경로 이름을 반환하는 속성 linkname${item.link}와 콩으로 Menu (또는 당신은 등 컨트롤러 서블릿, home, contact를 사용하는 경우).

    fn:substring()은 선행 슬래시를 제거합니다. EL의 조건부 연산자 ?:은 조건이 참일 때만 클래스를 인쇄하고, 그렇지 않은 경우 클래스를 인쇄합니다.

    관련 문제