function exitSystem()
{
var ok = confirm("您确定要退出该系统吗?");
if(ok){
<%session.removeAttribute("user");%>
}
window.close();
}
问题:包含这个js的页面,函数没运行,但是session中的user被清除了。
分析: <%session.removeAttribute("user");%> 是在服务端执行的,而js是在浏览器端执行的。流程:访问服务器-》服务端运行Java代码,生成静态内容-》返回给客户端浏览器-》浏览器展示并运行js代码,也就是session清除user属性的操作在服务端已经执行了,这才会导致明明登录了,session中却没有user的问题。
解决:
function exitSystem()
{
var ok = confirm("您确定要退出该系统吗?");
if(ok){
location.href="${pageContext.request.contextPath}/removeUser";
}
window.close();
}
//在removeUser函数中清除session中user属性