导航警报而不保存修改

时间:2010-01-30 08:47:14

标签: php javascript

我正在用PHP开发一个网站。

我希望显示类似javascript警报的消息,当用户尝试编辑或在表单中添加内容并尝试导航到其他部分而不保存修改时,我想向他们显示消息,

您即将从此页面浏览,您的修改未保存,是否要继续?

我该怎么做?

任何人都有想法???请与我分享..

由于

1 个答案:

答案 0 :(得分:4)

使用beforeunload事件。伪代码:

window.onbeforeunload = function(e){
   e = e || window.event;
   // check if the user has edited sth
   if(userHasEditedSomething()){
      var msg = "You have unsaved changed. Do you want to navigate away from this page?";
      e.returnValue = msg;
      return msg;
   }
}

您的工作是实现userHasEditedSomething函数,当用户有未保存的更改(填写的表单字段)时,该函数将返回true,否则返回false。

大多数浏览器都支持此事件