请教关于‘onbeforeunload’的事件
<body onbeforeunload="return '退出登录将导致网络中断,是否继续?'" >
大家可以在机器上测试一下第一个RETURN会弹出什么窗口。我这弹出是:
确定要离开该页面吗?
退出登录将导致网络中断,是否继续?
按确定继续,按取消留在当前页
第一个问题:客户想,只要一行字,他要求该弹出窗口只显示:你确定要下线?
后来我改成:<body onbeforeunload="window.onbeforeunload=null;alert('你确定要下线?');">
但是,这样改了就只有:‘确定’按钮,没有‘取消’按钮了。
当然,这肯定不行啊,取消按钮也的有呀!
在这个页面里,我还有一个用户下线的按钮
<input type="button" name="loginsubmit" value="下 线" class="bottom" onClick="do_logout();return false;">
function do_logout(flg)
{
/*if(flg!="" && !confirm("你确定要下线?"))
return;*/
var con=postData("省了", "post", "uid="+uid.value);
if(con=="logout_ok")
{
window.close();
}
else
{
alert("操作失败");
}
}
第二个问题:用户下线的按钮提示语备注掉了,但是他还是一直显示windows的onbeforeunload那句提示语。有办法让它不弹出提示语句吗?
------解决方案--------------------很期待解决办法出现,mark
------解决方案--------------------有个这样的解决办法
JScript code
<BODY onbeforeunload="javascript:logout()">
<SCRIPT LANGUAGE="JavaScript">
<!--
function logout(){
if(confirm("确定下线?")){
return true;
}else{
window.event.returnValue=false;
}
}
//-->
</SCRIPT>
------解决方案--------------------
第二个
你在window.close()后面
覆盖下onbeforeunload方法
什么也不做就可以了
window.onbeforeload=function(){}
------解决方案--------------------
if (!window.confirm("你确定要下线?")){
return;
}
------解决方案--------------------
楼主的那种要求只能在退出登录的时候实现,
就是用户在单击“下线”按钮时,给他一个提示
“你确定要下线?”
单击确定则退出登录,单击取消则什么也不做。
这样的效果是可以的,
但是至于在关闭浏览器或者刷新的时候询问
“你确定要下线?”在执行操作,是去不掉
系统默认的那句提示语的。
一般情况下都是在退出登录的时候实现,很少在关闭
浏览器的时候实现。
祝福楼主,如果可以实现,请告诉我,
让我也学习一下,谢谢!!!O(∩_∩)O谢谢!!!