JSP 網頁在與使用者互動的過程中,有時需要彈出提示框,通知使用者一些資訊,如登入密碼錯誤等
在做JSP網頁項目中, 實踐並總結了三種有效方式
方式1: JSP前端
<script type="text/javascript" language="javascript">
alert("您還沒有登入,請登入...");
window.document.location.href="userlogin.html";
</script>
方式2: Java後台
public void popAlert() {
response.setCharacterEncoding("utf-8");
PrintWriter out = response.getWriter();
out.print("<script>alert('您還沒有登入,請登入...'); window.location='userlogin.html' </script>");
out.flush();
out.close();
}
方式3: Java後台 + JSP前端
1) Java後台程式碼片段
public void popAlert() {
request.setAttribute("loginError", "您還沒有登入,請登入..."); // 設定錯誤屬性
request.getRequestDispatcher("userlogin.html").forward(request, response);
}
2) JSP前端程式碼片段
<%
String errorInfo = (String)request.getAttribute("loginError"); // 擷取錯誤屬性
if(errorInfo != null) {
%>
<script type="text/javascript" language="javascript">
alert("<%=errorInfo%>"); // 彈出錯誤資訊
window.location='userlogin.html' ; // 跳轉到登入介面
</script>
<%
}
%>
總結
三種方式,實質都是通過JavaScript彈出對話方塊,提示使用者密碼錯誤,當使用者點擊alert確定按鈕後,自動跳轉到登入介面userlogin.html