当用户离开页面时,我有以下javascript来显示确认框。
我的问题是,即使用户点击我页面中表单内的提交按钮,它也会显示。我不希望在表单提交和跨度点击时触发此操作。
如何在下面的功能中允许表单提交和跨度点击?
window.onbeforeunload = function (e) {
e = e || window.event;
return '';
};
修改 -------------------------------
抱歉,它现在是一个表单,它是简单的按钮和一个href: 我有一个页面只使用一个按钮:<input type="button" value="Save" id="btn-crop" />
和一个链接:
<a href="done.php" class=button2>Save</a>
答案 0 :(得分:0)
您应该能够使用e.currentTarget属性检查调度事件的对象,然后在必要时显示提示。
答案 1 :(得分:0)
您可以在页面中每个按钮的回复提交事件中调用[Event].stopPropagation
。
当提交按钮时,此函数将停止beforeunload
事件的回调函数。
您可以详细了解[Event].stopPropagation
here。
像这样:Button.addEventListener("submit",function(Event){Event.stopPropagation()})