我有一个表格,当-some-元素聚焦时会发生变化 我想在离开页面时收到警告。所以我留下一面旗帜告诉我这些元素何时发生了变化 问题是警告“此页面要求您确认要离开” - 始终是提示;
function checkSave(){
return PageWasChanged; // it is correct, checked
}
$(window).on("beforeunload", function (eve) {
if (checkSave()) {
return true;
}
else {
return false;
}
});
答案 0 :(得分:1)
beforeunload
与其他事件不同。它的处理程序应该返回undefined
(不显示提示符)或字符串(以前用作提示文本,但不在现代浏览器中)。
所以:
$(window).on.("beforeunload", function() {
if (!checkSave()) {
return "You have unsaved changes.";
}
});
或没有jQuery:
window.onbeforeunload = function() {
if (!checkSave()) {
return "You have unsaved changes.";
}
};