编辑页面离开提醒:“页面内容已修改,您确定要离开么?”

1.添加window.onbeforeunload函数

<script language=”javascript”>
function   window.onbeforeunload(){
event.returnValue = “页面值已经修改,是否真的不保存?”;  //提示内容
}
</script>

2.如何避免进行提交时也错误的进行离开提醒呢?

(1)在表单中建立一个hidden的对象,用来判断是否点击了提交按钮,默认值为0

<input type=”hidden” name=”clickonsub” value=”0″ />

(2)在onsubmit或其它提交验证函数的最后,即验证结束,开始提交之前把这个对象赋值为1

document.release.clickonsub.value=”1″;   //供离开页面提醒用

(3)把window.onbeforeunload函数修改为如下样式,即增加对这个对象值的判断,为1时才提醒

<script language=”javascript”>
function   window.onbeforeunload(){
if(document.release.clickonsub.value==0){
event.returnValue = “页面值已经修改,是否真的不保存?”;  //提示内容
}
}
</script>

(4)还可以增加页面内容是否修改的判断

3.其它问题,网上有人这样说,但我没发现有这问题

引起当前页面发生跳转主要3类事件:
1、对浏览器窗口的操作,比如关闭浏览器、go home、backward、forward和refresh等;
2、对于网页的Navigatie操作,比如点击链接、在地址栏中执行新的地址、页面表单提交到非当前页面等;
3、脚本代码引起的页面Navigate操作,比如执行navigate、locatoin方法(replace, reload, assign)和修改location属性(href, search)等。
以上的1-2类操作引起onbeforeunload的事件,使用起来基本没有任何的问题,可是执行第3类页面条转操作却有点小问题。就是在上图的窗口出现后,如果点选”OK”,确实就OK,页面正确跳转了。可是如果这个时候,我们点选”Cancel”,却会出现一个脚本异常

解决方法就是把脚本调用try一下,但这似乎是IE的一个bug的说。

编辑页面离开提醒 try
编辑页面离开提醒 编辑页面离开提醒 编辑页面离开提醒 {
编辑页面离开提醒 //  编辑页面离开提醒
编辑页面离开提醒 event.returnValue = ”You will lose any unsaved content”;
编辑页面离开提醒 //  编辑页面离开提醒
编辑页面离开提醒 }
编辑页面离开提醒 编辑页面离开提醒 catch(e) 编辑页面离开提醒 {}

转载于:https://www.cnblogs.com/nightly/archive/2012/03/21/2410075.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值