0
我有一个header.jsp,我想包含在多个页面中。标题页面中有三个链接。我正在使用CSS来向用户指示他们在任何给定点上的哪个页面。下面是header.html中的代码:jsp选择语句
<ul>
<%-- Check for the activeState parameter to decide which css to use --%>
<c:choose>
<c:when test='${requestScope.activeState == "home"}'>
<li><a href="index.jsp" class="active"><span>Home</span></a></li>
</c:when>
<c:otherwise>
<li><a href="index.jsp"><span>Home</span></a></li>
</c:otherwise>
</c:choose>
<c:choose>
<c:when test='${requestScope.activeState == "about"}'>
<li><a href="about.jsp" class="active"><span>About Us</span></a></li>
</c:when>
<c:otherwise>
<li><a href="about.jsp"><span>About Us</span></a></li>
</c:otherwise>
</c:choose>
<c:choose>
<c:when test='${requestScope.activeState == "contact"}'>
<li><a href="contact.jsp" class="active"><span>Contact Us</span></a></li>
</c:when>
<c:otherwise>
<li><a href="contact.jsp"><span>Contact Us</span></a></li>
</c:otherwise>
</c:choose>
</ul>
这是index.jsp文件所说:
<jsp:include page="header.jsp">
<jsp:param value="home" name="activeState"/>
</jsp:include>
这是行不通的。 index.html页面显示了六个链接。三个与CSS和三个没有CSS。下面是源看起来像index.html页面:
<c:choose>
<c:when test='false'>
<li><a href="index.jsp" class="active"><span>Home</span></a></li>
</c:when>
<c:otherwise>
<li><a href="index.jsp"><span>Home</span></a></li>
</c:otherwise>
</c:choose>
<c:choose>
<c:when test='false'>
<li><a href="about.jsp" class="active"><span>About Us</span></a></li>
</c:when>
<c:otherwise>
<li><a href="about.jsp"><span>About Us</span></a></li>
</c:otherwise>
</c:choose>
<c:choose>
<c:when test='false'>
<li><a href="contact.jsp" class="active"><span>Contact Us</span></a></li>
</c:when>
<c:otherwise>
<li><a href="contact.jsp"><span>Contact Us</span></a></li>
</c:otherwise>
</c:choose>
我也尝试过使用的param.activeState
代替requestScope.activeState
获得ActiveState的参数。行为没有变化。有人可以解释发生了什么事吗?