我知道这与禁忌有关,请不要回答“你不应该这样做”等等。
我在向导中有一个很长的表单,有些用户习惯使用浏览器的后退和前进按钮,而不是表单向导上的“后退”和“下一步”按钮。如果他们点击浏览器的后退按钮,他们将丢失所有表单数据(由于表单太长,这会很麻烦)。
是否可以显示何时会有“带我离开这里”按钮和“取消”按钮的警报,所以如果他们点击取消它会取消后退按钮的功能?
答案 0 :(得分:8)
您应该从onbeforeunload
事件返回一条消息,如下所示:
window.onbeforeunload = function() {
return "Leaving this page will reset the wizard";
};
请注意,即使在向导完成后,当用户离开任何原因的页面时,也会触发此事件。
您应该在向导完成时设置一个标志,而不是返回消息。
答案 1 :(得分:1)
您可以使用jQuery BBQ插件重写下一个/上一个按钮的功能,使其在整个“向导”中更加无缝转换
http://benalman.com/projects/jquery-bbq-plugin/
虽然设置有点复杂,但如果您正在寻找相同的功能,请查看提供的示例。
您可能需要重构代码以适应,并且需要数小时。