用Servlet+jsp寫彈出框


請求Servlet完成后,如何在jsp中彈出想要的彈窗呢?

我在選課系統中遇到了這個問題,我需要在點擊選課按鈕后彈出選課成功或已經選過這門課了,其中的選課按鈕是一個鏈接到Servlet的超鏈接。我的寫法是在Servlet中利用session將響應值傳到jsp中,在通過JavaScript彈出alert框。

原理:利用session把Servlet的響應值傳給jsp,jsp中接受session值並做出判斷,JavaScript彈出alert。

代碼示例:

Servlet中:

HttpSession session = request.getSession();//創建session變量
String message = null; //定義message變量 if (k == 0) {
                    message = "選課成功!";
                    session.setAttribute("message",message);  //傳值
                    response.sendRedirect("xuanke.jsp");   //跳轉頁面,直接跳轉原來的頁面就好

                }
                else{
                    message = "你已經選過這門課了!";
                session.setAttribute("message",message);
                    response.sendRedirect("xuanke.jsp");
                }

jsp中:

        <%
        String mess=(String)session.getAttribute("message");  //接收后台傳來的message if(mess!=null&&!mess.equals("")){  //判斷message %>
    <script type="text/javascript">
        alert("<%=mess%>");  //彈出警示框 </script>
    <%
            session.setAttribute("message","");  //將message值設為空,否則將一直彈出。
     }
    %>

 

顯示效果:點擊選課按鈕后,就會彈出警示框。

 

示例:

Servlet

if (k == 0) {
                    dao.xuanke(xuanke1);
                    String renshu = null;
                    renshu = dao.selectrenshu(A.getClassnumber());
                    int y = Integer.parseInt(renshu);
                    y = y + 1;
                    renshu = "" + y;
                    dao.updaterenshu(classnumber, renshu);
                    message = "選課成功!";
                    session.setAttribute("message",message);
                    response.sendRedirect("xuanke.jsp");

                }
                else{
                    message = "你已經選過這門課了!";
                session.setAttribute("message",message);
                    response.sendRedirect("xuanke.jsp");
                }

jsp:

  <%
        String mess=(String)session.getAttribute("message");
        if(mess!=null&&!mess.equals("")){
        %>
    <script type="text/javascript">
        alert("<%=mess%>");
    </script>
    <%
            session.setAttribute("message","");
     }
    %>
    <%
        }
    %>

 

 

 

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM