弹出一个确认框

时间:2014-01-20 09:00:35

标签: javascript jquery

我的项目是使用jquery和html构建的单页网站。

在我的项目中,我有很多创建和更新表单,这些表单通过显示和隐藏div,元素加载和删除html来管理。

我想在项目中添加一个功能,只要剩下创建或更新页面,就会弹出一个确认框。

我的意思是当用户创建某些内容并点击菜单栏(故意或有误)时,会弹出一个确认框说

  

你确定要退出吗?

我试过

  

window.onbeforeunload

但它对我有用。

现在,因为元素被动态加载和删除,页面没有重定向,因此我无法使用此方法..

有什么建议吗?

4 个答案:

答案 0 :(得分:0)

你可以使用一个简单的提示,但是对于更加花哨的东西 - 几乎同样简单的检查JQuery Dialog:

http://jqueryui.com/dialog/

它需要JQuery UI。

答案 1 :(得分:0)

你必须在窗口卸载方法上触发一个对话框

$( window ).unload(function(e) {
  alert( "unload() called." );
  // aa is any condition
  if(a)
  {
    return true;
  }
  else
  {
    e.preventDefault();
  }
});

如果从页面导航,则卸载()函数calle ...

答案 2 :(得分:0)

第一个解决方案是使用jQuery Dialog - http://jqueryui.com/dialog/ 另一种是使用Javascript confirm() - http://www.w3schools.com/jsref/met_win_confirm.asp 但是使用jQuery Dialog,您可以根据需要设置它(添加css,更多按钮,标题等)。使用Javascript Confirm(),您只能在对话框中选择事件和文本。

答案 3 :(得分:0)

window.onbeforeunload = function() {
    if( form.hasUnsavedChanges() === true ) { // or other conditions you need
        return 'Are you sure you want exit ?';
    }
};