我正在创建一个 HTML 布局,用户可以在其中填充数据并使用“保存”和“另存为草稿”分别以 HTML 和 JSON 格式保存该页面。我可以用吗
window.onbeforeunload
在我的template.html
文件中两次显示两个不同的警报消息?
警报将显示:
- 当页面为空并且用户尝试去加载另一个页面时
- 当用户在布局中填充数据并尝试离开布局而不保存时
我正在创建一个 HTML 布局,用户可以在其中填充数据并使用“保存”和“另存为草稿”分别以 HTML 和 JSON 格式保存该页面。我可以用吗
window.onbeforeunload
在我的template.html
文件中两次显示两个不同的警报消息?
警报将显示:
首先看这个例子来理解如果你使用它两次会发生什么,然后给出下面的想法
window.onbeforeunload=function()
{
if(form_empty())
return "Form is empty"; // message for empty form
else
return "Form is not empty"; // message for filled up form
}
function form_empty()
{
// check form fields whether the form is empty or not
// return true if form is empty
// return false if form is not empty
}
就像以这种方式分配的任何其他事件处理程序一样,如果再次设置它,它将破坏已经存在的任何处理程序。
现在,如果您要根据页面状态添加和删除事件,那么这应该不是问题。否则,它有点复杂。但是,在 的情况下onbeforeunload
,最好只拥有一个。