当用户编辑某个字段并尝试转到其他页面或点击靠近该页面时,我尝试显示一条消息
出现消息
此页面要求您确认是否要离开 - 您输入的数据可能无法保存。
我使用此代码:
$('#form').data('serialize',$('#form').serialize());
// On load save form current state
$(window).bind('beforeunload', function(e){
if($('#form').serialize()!=$('#form').data('serialize'))return true;
else e=null;
// i.e; if form state change show box not.
});
此代码仅在用户尝试编辑某些内容时才有效,如果不能,我可以关闭页面,这就是我想要的内容。
问题是,当我提交表单
时,也会显示该消息当我尝试click
button
提交时,该消息也会出现
此页面要求您确认是否要离开 - 您输入的数据可能无法保存。
单击“提交”按钮时如何防止显示该消息?!!
答案 0 :(得分:0)
将侦听器保存在变量中,并在提交
时将其删除
const onBeforeUnloadListener function(e){
if($('#form').serialize()!=$('#form').data('serialize'))return true;
else e=null;
// i.e; if form state change show box not.
}
$(window).bind('beforeunload', onBeforeUnloadListener);
$('#form').on('submit', function() {
$(window).unbind('beforeunload', onBeforeUnloadListener)
}