Я пытаюсь отобразить сообщение рычания jQuery, как только пользователь нажимает на ссылку "Выйти" .Поскольку в JSP нет встроенной технологии для создания таких вещей, я должен использовать сторонний плагин https://ksylvest.github.io/jquery-growl/ для достижения этой цели.
Поток программы:
1) Со страницы login.jsp , Пользовательвход в систему с именем пользователя и паролем.
2) Управление переходит к EmployeeServlet, если проверка прошла успешно, пользователь перенаправляется на страницу admin.jsp , остальное остается на login.jsp page.
3) На странице admin.jsp , когда пользователь нажимает Sign-out , пользователь должен получить уведомление с помощью сообщения «Успешный выход из системы» .
Но теперь проблема заключается в том, что сообщение рычага jQuery отображается даже тогда, когдаокно обновляется, что не то, что я хочу.Он должен отображаться только при нажатии на ссылку Выход . Пожалуйста, помогите !!!
login.jsp
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Login page</title>
<!-- css library -->
<link rel="stylesheet" href="assets/bootstrap/css/bootstrap.min.css">
<!-- jQuery library -->
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js" type="text/javascript"></script>
<script src="assets/bootstrap/js/bootstrap.min.js"></script>
<script src="assets/js/jquery.growl.js" type="text/javascript"></script>
<link rel="stylesheet" href="assets/css/jquery.growl.css" type="text/css" />
<script type="text/javascript">
$.growl({ title: "Growl", message: "The kitten is awake!" });
$.growl.error({ message: "The kitten is attacking!" });
$.growl.warning({ message: "The kitten is ugly!" });
$.growl.notice({ message: "You have been logged out successfully" });
</script>
</head>
<body>
<div class="container">
<div class="row">
<div class="col-xs-12 col-sm-12 col-md-12 col-lg-12">
<!-- Start form -->
<form method="post" action="empServlet">
<div class="form-group">
<label for="Name">Name</label>
<input type="text" class="form-control" id="name" name="name" aria-describedby="info" placeholder="Enter name">
</div>
<div class="form-group">
<label for="Password">Password</label>
<input type="password" class="form-control" name="password" id="password" placeholder="Password">
</div>
<div class="form-check">
<button type="submit" class="btn btn-primary">Submit</button>
</div>
</form>
<!-- End form -->
</div>
</div>
</div>
</body>
</html>
EmployeeServlet.java
@WebServlet("/empServlet")
public class EmployeeServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
public EmployeeServlet() {
super();
}
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
response.getWriter().append("Served at: ").append(request.getContextPath());
}
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
String name = request.getParameter("name");
String pwd = request.getParameter("password");
HttpSession session = request.getSession(true);
session.setAttribute("name", name);
session.setAttribute("pwd", pwd);
if(session!= null && name.equals("admin") && pwd.equals("admin123")){
response.sendRedirect(request.getContextPath() + "/admin.jsp");
}
doGet(request, response);
}
}
admin.jsp
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js" type="text/javascript"></script>
<script src="assets/js/jquery.growl.js" type="text/javascript"></script>
<link rel="stylesheet" href="assets/bootstrap/css/bootstrap.min.css">
<link href="assets/css/jquery.growl.css" rel="stylesheet" type="text/css" />
<link rel="stylesheet" href="assets/css/custom.css">
</head>
<body>
<script type="text/javascript">
$(document).on("click", "a", function(){
alert("A link was clicked!");
});
</script>
<!-- Fixed navbar -->
<nav id="header" class="navbar navbar-fixed-top">
<div id="header-container" class="container navbar-container">
<div class="navbar-header">
<button type="button" class="navbar-toggle collapsed"
data-toggle="collapse" data-target="#navbar" aria-expanded="false"
aria-controls="navbar">
<span class="sr-only">Toggle navigation</span> <span
class="icon-bar"></span> <span class="icon-bar"></span> <span
class="icon-bar"></span>
</button>
<a type="hidden" id="signOut" class="navbar-brand"
style="margin-left: 600px" href="logoutServlet">Sign Out</a>
</div>
</div>
</nav>
</body>
</html>
LogOutServlet.java
/**
* Servlet implementation class LogOutServlet
*/
@WebServlet("/logoutServlet")
public class LogOutServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
public LogOutServlet() {
super();
}
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
response.getWriter().append("Served at: ").append(request.getContextPath());
HttpSession session = request.getSession(false);
if(session == null || !request.isRequestedSessionIdValid()){
session.invalidate();
}
response.sendRedirect(request.getContextPath() + "/login.jsp");
}
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
doGet(request, response);
}
}