我有一个JSP Page 1,在这个JSP页面中我有一个让我们说link1.当我点击那个链接时,它转到JSP 2.Now在JSP 2中,我有4个包含jspf pages.Header / footer /搜索框/主要内容页面。现在在这个搜索框jspf页面中,我有搜索页面html代码,其中我有选择字段,用户在搜索时选择一个选项。当我做多个页面时搜索相同的选项值字段,它没有在搜索页面上保持其值。我需要为同一个用户会话维护该值,我该如何实现呢?
我试过的一些事情,对于搜索页面,我在会话中存储了选择框的值,然后在jspf页面中,我尝试通过类似这样的jstl进行检索。,
<
select name="Name" class="cl-search" id="id-search" lang="en">
<c:choose>
<c:when test="${ empty sessionScope.TEST1}">
<option id="bt" value="test1">TEST1</option>
</c:when>
<c:otherwise>
<option id="bt" value="test1"><c:out value="${sessionScope.TEST1}"/></option>
</c:otherwise>
</c:choose>
<c:choose>
<c:when test="${ empty sessionScope.TEST2}">
<option id="gt" value="test2">TEST2</option>
</c:when>
<c:otherwise>
<option id="gt" value="test2"><c:out value="${sessionScope.TEST2}"/></option>
</c:otherwise>
</c:choose>
<c:choose>
<c:when test="${ empty sessionScope.TEST3}">
<option id="tod" value="test3">TEST3</option>
</c:when>
<c:otherwise>
<option id="gt" value="test3"><c:out value="${sessionScope.TEST3}"/></option>
</c:otherwise>
</c:choose>
在servlet中我有类似的东西,
String selectvalue = request.getParameter("selectname");
HttpSession session = request.getSession();
if(selectvalue.equals("test1")){
session.setAttribute("TEST1",test1);
}else if(selectvalue.equals("test2")){
session.setAttribute("TEST2",test2);
}else if(selectvalue.equals("TEST3")){
session.setAttribute("TEST3",test3);
}
不确定我是否正确解释了我的问题,我想要的是,如果用户从选择框中选择一个值并进行搜索,如果搜索结果跨越多个页面,我如何在所有页面中保持相同的选择值对于该用户会话的那个类别。我在select字段中有接近10个值,具体取决于该值是否调用DAO的不同类。