无法在jsp中使用javascript清除会话
使用servlet从login.jsp页面创建会话无法在jsp中使用javascript清除会话,javascript,java,jsp,session,servlets,Javascript,Java,Jsp,Session,Servlets,使用servlet从login.jsp页面创建会话 String msg = ""; HttpSession sess = request.getSession(); // if(sess != null) //sess.invalidate(); if (sess.getId() != null) { sess.setAttribute("uname", uname); sess.s
String msg = "";
HttpSession sess = request.getSession();
// if(sess != null)
//sess.invalidate();
if (sess.getId() != null) {
sess.setAttribute("uname", uname);
sess.setAttribute("pwd", pwd);
}
使用在其他jsp页面中检索会话
<b> Welcome ${uname}</b>
我们无法直接从JS代码中清除会话。您必须调用另一个JSP页面将使该会话无效: Javascript函数:
function destroySession() {
window.location = "killSession.jsp";
}
killSession.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>Log out</title>
</head>
<body>
<%
session.invalidate();
%>
User has been Logged out sucessfully!!!!
</body>
</html>
注销
用户已成功注销!!!!
使用sess.invalidate();但是javascript在另一个.js文件中。客户端需要发出服务器请求以使服务器端的会话无效。javascript只获取HTML中id为logout\u link
的a
元素。为什么您希望a
元素具有session
属性?您能举一个例子吗?如何做到这一点?我只是使用调用javascript,但它不工作它调用JPS页面吗?您在JSP中编写的内容/这是我在JSP.No中编写的链接。我说的是killSession.jspxmlhttp.open(“GET”,“killSession.jsp”,false)嘿,@Rehman我抓到你了。。我尝试使用“page1.jsp1”,这是我使用${uname}调用会话的jsp页面的名称。
function destroySession() {
window.location = "killSession.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>Log out</title>
</head>
<body>
<%
session.invalidate();
%>
User has been Logged out sucessfully!!!!
</body>
</html>