在离开状态窗口前询问状态是否为true的Javascript函数
我有一个activestatus变量,它告诉我们是否保存到文件,如果文件未保存,则activestatus将为true。在这种情况下,如果用户按下浏览器返回或尝试键入不同的url并继续,他应该会弹出一个窗口,说“您尚未保存要保存的更改?是否” 这是我到目前为止试过的在离开状态窗口前询问状态是否为true的Javascript函数,javascript,Javascript,我有一个activestatus变量,它告诉我们是否保存到文件,如果文件未保存,则activestatus将为true。在这种情况下,如果用户按下浏览器返回或尝试键入不同的url并继续,他应该会弹出一个窗口,说“您尚未保存要保存的更改?是否” 这是我到目前为止试过的 var activeInput=true; window.onbeforeunload =checkNow; function checkNow(){ if(activeInput==true){
var activeInput=true;
window.onbeforeunload =checkNow;
function checkNow(){
if(activeInput==true){
alert('please save your changes');
return "Do you want to leave?"
}else{
alert('gonow');
return true;
}
}
基本上,我只想在用户想要离开窗口且未保存到文件时调用函数。尝试使用
addEventListener
,并使用e.returnValue
显示消息
var activeInput=true;
window.addEventListener('beforeunload', checkNow);
function checkNow(e) {
if (activeInput === false) return true;
var message = "Are you sure you want to leave this page? Ensure you save any changes.";
e.returnValue = message;
return message;
}
这是一本书。您可以阅读有关
onbeforeuload
事件的更多信息,包括e.returnValue
尝试使用addEventListener
,并使用e.returnValue
显示消息
var activeInput=true;
window.addEventListener('beforeunload', checkNow);
function checkNow(e) {
if (activeInput === false) return true;
var message = "Are you sure you want to leave this page? Ensure you save any changes.";
e.returnValue = message;
return message;
}
这是一本书。您可以阅读有关
onbeforeunload
事件的更多信息,包括e.returnValue
基于我要调用的变量的可能重复基于我要调用的变量的可能重复call@SudarshanKalebere如果它对你有用,请把它标对。上面写着“等5分钟”,所以我在等你,它表示您可以在2分钟内接受ans您编写的消息没有被调用,它是调用默认消息,并且当我的activeINput为true时它正在运行。如何捕获用户按下的是/否结果输入?您的代码中没有if和else的情况,它只是在所有情况下重新加载,主要问题是我有保存按钮,单击保存按钮它也会重新加载。@SudarshanKalebere如果它对您有效,请将其标记为正确。它说等待5分钟,所以我正在等待,它说您可以在2分钟内接受ans您编写的消息没有被调用,它调用默认消息,并且当我的activeINput为true时它正在运行。如何捕获用户按下的是/否结果输入?在你们的代码中并没有if和else的情况,它只是在所有情况下重新加载,主要的问题是我有save按钮,点击save按钮它也会重新加载。