0

我有一个名为menu.jsp. 在此页面上,用户必须从菜单中选择一个选项。我已经onclick("myredirect(choiceValue)")使用 JavaScript 在每个菜单项上实现了。此功能使用确认弹出框来检查用户是否要继续他当前的选择。如果用户选择 ok,那么它将返回 true,并将存储在check变量中。我想将其发送choiceValue到一个名为 servlet,该 servletCheckLogin.java检查用户是否使用会话跟踪登录。如果用户未登录,他将被重定向到login.jsp页面,否则他将被重定向到instructions.jsp页面。

我已经实现了如下的全部内容。我想在choiceValue整个会话中使用,但它没有按我预期的那样工作。

menu.jsp

<script type="text/javascript">
<!--
    function myredirect(choiceValue){
    var check=window.confirm("You have Choosen "+choiceValue+" !\n Do you want to continue?");
        if(check){
            window.location.replace("checklogin.do?choice="+choiceValue);
            //window.location.replace("instructions.jsp?choice="+choiceValue);
        }
    }
//-->
</script>

CheckLogin.java

public class CheckLogin extends HttpServlet {

    public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

        //cache controlling
        response.setHeader("Pragma", "no-cache");
        response.setDateHeader("Expires",0);
        response.setHeader("Cache-Control", "no-cache");

        HttpSession session=request.getSession(false);

        if(session==null)                                   //checking existing session
            response.sendRedirect("login.jsp");
        else if(session.isNew())
            response.sendRedirect("login.jsp");
        else{
            //setting choiceValue to session object so that it can be used further
            String choiceValue=request.getParameter("choice");
            session.setAttribute("choice",choiceValue);
            response.sendRedirect("instructions.jsp");      //redirecting to instruction.jsp page
        }
    }
4

0 回答 0