编辑:我的问题与'假设重复'有所不同,因为我正在检查如何在点击链接时不触发事件,另一个问题是如何检测表单中的更改。
我正在使用一个函数(taken from here)来检测在离开页面之前对表单所做的任何更改,这很好但是当我点击保存按钮时它也会触发,因为我正在使用{{1触发该函数的事件,我想在单击我的保存按钮时阻止这种情况发生。
这是我的活动:
onbeforeunload
如何在单击此特定保存链接时阻止此事件触发?
链接:
window.onbeforeunload = function (e) {
e = e || window.event;
if (formIsDirty(document.forms[0])) {
// For IE and Firefox
if (e) {
e.returnValue = "You have unsaved changes.";
alert("You have unsaved changes.");
}
// For Safari
return "You have unsaved changes.";
alert("You have unsaved changes.");
}
};
答案 0 :(得分:0)
event.target //DOM object.
event.target.id //id of source element.
sourceElement = $(event.target.id); // will get you jQuery object
你可以检查元素是否是提交按钮。如果是,则无需显示消息