在任何浏览器中禁用后退按钮的替代方法

时间:2013-02-13 03:42:33

标签: php javascript web-applications

是否可以选择禁用任何浏览器的后退按钮以避免以下情况:

  1. 用户正在填写大表格
  2. 用户意外按下后退按钮
  3. 当用户返回页面时,他们必须在表格被擦除后再次填写表格

2 个答案:

答案 0 :(得分:3)

结帐sisyphus.js。它正是为了这个目的。它将GMail风格(客户端)自动保存添加到任何HTML表单。在页面中添加此行以及要保存的表单:

$('form').sisyphus();

当用户填写此表单时,库将自动保存他们在本地键入的任何内容。如果他们离开页面(或浏览器崩溃,只需返回同一页面将自动填充表格及其所有数据。一旦他们成功提交表格,sisyphus.js将清除本地缓存的输入数据。< / p>

还有一个Sisyphus的替代方案,我还没有尝试过调用Garlic.js,据说它对旧浏览器有更好的支持。

答案 1 :(得分:0)

您需要在表单上跟踪一些脏标志。浏览器有onbeforeunload个事件。订阅此活动并弹出一个对话框,告知用户他是否真的要离开该页面。

请记住,此页面的任何导航都会触发此事件。