我使用以下 JavaScript 代码来警告用户,如果他尝试重定向到另一个页面而不提交表单。
window.onbeforeunload = function() {
return 'Are you sure that you want to leave this page?';
};
这工作正常。但我的问题是,当用户尝试使用提交按钮提交表单时,会出现确认框。
如果用户提交表单,我不想询问确认,否则我想询问确认。这怎么可能?
维护一个状态变量。当用户单击提交按钮时将状态设置为userSubmitted=True
;
状态变量可以包括全局变量或隐藏控制。
var userSubmitted=false;
$('form').submit(function() {
userSubmitted = true;
});
然后像这样检查
window.onbeforeunload = function() {
if(!userSubmitted)
return 'Are you sure that you want to leave this page?';
};
PS:交叉检查跨浏览器的 onbeforunload 兼容性。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)