如果用户想要离开带有未保存表单数据的页面,我想显示一个确认对话框。我所拥有的是:
window.onbeforeunload = function() {
if (not_saved) if (confirm('Changes will not be saved')) return true;
return false;
}
但无论用户点击什么,结果都是一样的——愚蠢的硬编码对话框,询问他们是要离开页面还是留在页面上。我想问他们是想留下还是离开,如果他们想留下,什么都没有发生,如果他们想离开,他们就离开。这甚至可能吗?我可以看到浏览器想要限制网站可以做些什么来让用户留在页面上,但我想我已经看到一些网站(我认为是谷歌文档)有很好的文明对话框。