是否有使用JSTL创建带导航链接的菜单的库或最佳实践方法? 我每页都有5个链接.我希望指向当前页面的链接被“禁用”.我可以手动执行此操作,但这必须是人们之前处理过的问题.如果有
我每页都有5个链接.我希望指向当前页面的链接被“禁用”.我可以手动执行此操作,但这必须是人们之前处理过的问题.如果有一个taglib处理它但我不知道它,我不会感到惊讶.
您可以让JSTL / EL根据所请求的JSP页面的URL有条件地生成 HTML / CSS.您可以通过EL中的${pageContext.request.servletPath}获取它.假设你在某些Map< String,String>中有链接在申请范围内:<ul id="menu"> <c:forEach items="${menu}" var="item"> <li> <c:choose> <c:when test="${pageContext.request.servletPath == item.value}"> <b>${item.key}</b> </c:when> <c:otherwise> <a href="${item.value}">${item.key}</a> </c:otherwise> </c:choose> </li> </c:forEach> </ul>
或者当你刚刚参加CSS课程之后
<ul id="menu"> <c:forEach items="${menu}" var="item"> <li><a href="${item.value}" class="${pageContext.request.servletPath == item.value ? 'active' : 'none'}">${item.key}</a></li> </c:forEach> </ul>
您可以使用< jsp:include>重用JSP页面中的内容.将上面的内容放在自己的menu.jsp文件中并包含如下:
<jsp:include page="/WEB-INF/menu.jsp" />
该页面位于WEB-INF文件夹中以防止直接访问.