gpt4 book ai didi

javascript - 检查卸载前是否保存更改

转载 作者:行者123 更新时间:2023-11-29 22:23:39 24 4
gpt4 key购买 nike

我有以下 JavaScript

编辑:包括已保存更改的分配

 var changesSaved = true;

$(document).ready(function () {

$(".applyChanges").click(function (e) {
e.preventDefault();
var id = (this).id;
var dayofweek = document.getElementById("dayofweek" + id).value;
var hour = document.getElementById("hour" + id).value;
var duration = document.getElementById("duration" + id).value;
$.ajax({
url: '@Url.Action("ApplyChanges")',
type: 'POST',
data: {
id: id,
dayofweek: dayofweek,
hour: hour,
duration: duration
},
success: function (data) {
$('#Calendar').fullCalendar('refetchEvents')
$('#Calendar2').fullCalendar('refetchEvents')
changesSaved = false;
}
});
});
});

window.onbeforeunload = function () {
if (changesSaved == true) {
return true;
} else {
return ("You havent saved your changes. Are you sure you want to leave the page?")
}
}

但是无论 changesSaved 设置的是什么,都会提示消息。

我实际得到的是以下内容:

enter image description here

或者如果 changesSaved 设置为 false,它会说 false。

我不能这样做吗?

最佳答案

<body onbeforeunload="return bye()">

function bye(){
if(changesSaved) {
return "You havent saved your changes."
}
}

我就是这样做的。

或在纯 JavaScript 中:

window.onbeforeunload = function() {
if (changesSaved) {
return "You haven't saved your changes.";
}
};

关于javascript - 检查卸载前是否保存更改,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10873546/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com