0

私はJSPページ1を持っています。このJSPページにはlink1と言うことができます。そのリンクをクリックするとJSP2に移動します。JSP2では、4つのインクルードjspfページがあります。ヘッダー/フッター/検索ボックス/メインコンテンツページ。この検索ボックスのjspfページに、検索ページのhtmlコードがあります。このコードには、ユーザーが検索中に1つのオプションを選択する選択フィールドがあります。複数のページを実行すると、同じオプション値フィールドを検索します。検索ページ全体でその値を維持していません。同じユーザーセッションでその値を維持する必要があります。これを実装するにはどうすればよいですか。

私が試したいくつかのことは、検索ページで、選択ボックスの値をセッションに保存してから、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> 

サーブレットには、次のようなものがあります。

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);
        }

問題を正しく説明したかどうかはわかりませんが、ユーザーが選択ボックスから1つの値を選択して検索を実行し、検索結果が複数のページにまたがる場合、そのカテゴリのすべてのページで同じ選択値を維持するにはどうすればよいですか?ユーザーのそのセッションでは、選択フィールドに10近くの値があります。この値に応じて、DAOのさまざまなクラスが呼び出されます。

4

0 に答える 0