我用的是.net,做了个管理系统界面,实现了不能直接在IE上输入URL就能访问页面,必须登录后才能访问。
但是当我按“返回登录界面”BUTTON后,在点击IE上的后退键时他还是能直接访问那些已经访问过的页面,我用了Session[“name”] = "",Session.Abandon();可是按后退键的时候还是不能,请各位大侠指教。这是按钮响应的代码:private void Button_Click(object sender, System.EventArgs e)
{
Session["name"] = "";
Session.Abandon();
this.Response.Redirect("login.aspx",true);
}
但是当我按“返回登录界面”BUTTON后,在点击IE上的后退键时他还是能直接访问那些已经访问过的页面,我用了Session[“name”] = "",Session.Abandon();可是按后退键的时候还是不能,请各位大侠指教。这是按钮响应的代码:private void Button_Click(object sender, System.EventArgs e)
{
Session["name"] = "";
Session.Abandon();
this.Response.Redirect("login.aspx",true);
}
if (!Page.IsPostBack)
{
Session.Clear();
StringBuilder JScript = new StringBuilder();
JScript.Append("<script type='text/javascript'>window.close();</script>");
ClientScript.RegisterStartupScript(this.GetType(), "key0", JScript.ToString());
Server.Transfer("登陆页面地址");
}
其他页面里面你点击退出的时候让他转到LoginOut.aspx页面上就OK了。
O(∩_∩)O哈哈~
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>屏蔽鼠标右键、Ctrl+n、shift+F10、F5刷新、退格键</title>
</head>
<body onkeydown="KeyDown()" onbeforeunload="location=location"
oncontextmenu="event.returnValue=false">
<script language="Javascript"><!--
//屏蔽鼠标右键、Ctrl+n、shift+F10、F5刷新、退格键
//Author: meizz(梅花雨) 2002-6-18
function KeyDown(){
if ((window.event.altKey)&&
((window.event.keyCode==37)|| //屏蔽 Alt+ 方向键 ←
(window.event.keyCode==39))){ //屏蔽 Alt+ 方向键 →
alert("不准你使用ALT+方向键前进或后退网页!");
event.returnValue=false;
}
/* 注:这还不是真正地屏蔽 Alt+ 方向键,
因为 Alt+ 方向键弹出警告框时,按住 Alt 键不放,
用鼠标点掉警告框,这种屏蔽方法就失效了。以后若
有哪位高手有真正屏蔽 Alt 键的方法,请告知。*/
if ((event.keyCode==8)|| //屏蔽退格删除键
(event.keyCode==116)){ //屏蔽 F5 刷新键
event.keyCode=0;
event.returnValue=false;
}
if ((event.ctrlKey)&&(event.keyCode==78)){ //屏蔽 Ctrl+n
event.returnValue=false;
}
if ((event.shiftKey)&&(event.keyCode==121)){ //屏蔽 shift+F10
event.returnValue=false;
}
}
/* 另外可以用 window.open 的方法屏蔽 IE 的所有菜单
第一种方法:
window.open("你的.htm", "","toolbar=no,location=no,directories=no,menubar=no,scrollbars=no,resizable=yes,status=no,top=0,left=0")
第二种方法是打开一个全屏的页面:
window.open("你的.asp", "", "fullscreen=yes")
*/
// --></script>
<h2 align=center>屏蔽鼠标右键、Ctrl+n、shift+F10、F5刷新、退格键</h2>
</body>
</html>
不行啊,报错的 我用得是asp.net
protected void Page_Load(object sender, EventArgs e)
{
Response.CacheControl = "No-cache";//清楚缓存代码;
if (Session["master_id"] == null)
{
Response.Write(" <script> alert( '未登陆,或登陆超时! ');location.href='/Login.aspx'</script> ");
}
}
也就是说你点击后退的时候浏览器是从缓存文件夹中读取的文件。你可以再Meta中设置不缓存文件。<meta http-equiv="pragram" content="no-cache">
你建一个空白页面LoginOut.aspx,在他的load时间中写上如下代码:
protected void Page_Load(object sender, EventArgs e)
{
Session.Clear();
//表单验证退出
System.Web.Security.FormsAuthentication.SignOut();
HttpContext.Current.Response.Write("<script type='text/javascript'>parent.location='AdminLogin.aspx';</script>");
}
用<meta http-equiv="pragram" content="no-cache"
不行啊!!