如何在执行多页搜索时在选择框中恢复原始选择选项值

时间:2012-12-22 16:41:15

标签: jquery jsp servlets jstl

我有一个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的不同类。

0 个答案:

没有答案