在单击确认框中的确认或取消按钮后,如何使用JavaScript或jQuery返回真值或假值?
我目前正在一个项目中工作,如果用户尝试刷新当前页面,他们将收到带有“警告<代码>不刷新页面”的确认框,否则您将丢失数据,因此如果他们取消,他将停留在同一页面上,但我的问题是,当他们单击yes(是)时,即当他单击Reload(重新加载)时,应再获取一个警报在单击确认框中的确认或取消按钮后,如何使用JavaScript或jQuery返回真值或假值?,javascript,jquery,Javascript,Jquery,我目前正在一个项目中工作,如果用户尝试刷新当前页面,他们将收到带有“警告不刷新页面”的确认框,否则您将丢失数据,因此如果他们取消,他将停留在同一页面上,但我的问题是,当他们单击yes(是)时,即当他单击Reload(重新加载)时,应再获取一个警报您单击Reload now(立即重新加载)页面将重新加载,并且数据将丢失,因此如何执行此操作,因为当他单击Reload(重新加载)按钮时,我没有获取任何信息 下面是我写的脚本 <script src="https://code.jquery.com
您单击Reload now(立即重新加载)页面将重新加载,并且数据将丢失,因此如何执行此操作,因为当他单击Reload(重新加载)按钮时,我没有获取任何信息
下面是我写的脚本
<script src="https://code.jquery.com/jquery-3.3.1.min.js"></script>
<script>
$(window).on('beforeunload', function(){
return prompt("are you sure want to refresh this page !");
if(true){
alert('You will lose data');
}
else{
alert("Ok continue your work");
}
});
</script>
$(窗口).on('beforeunload',function(){
返回提示(“是否确实要刷新此页面!”);
如果(真){
警报(“您将丢失数据”);
}
否则{
警惕(“确定继续工作”);
}
});
Areturn
语句退出函数,这样return语句之后的所有内容都不会执行
我认为您不需要一个提示
框,而是一个确认
框(请参阅)
提示符
框仅用于用户获取某些内容
confirm
框用于询问用户是否确认了某些内容
var rep=confirm(“您确定要刷新此页面吗!”);
控制台日志(rep);
如果(代表){
警报(“您将丢失数据”);
}
否则{
警惕(“确定继续工作”);
}
我建议您在使用onBeforeLoad事件时不要使用Jquery。它会导致不必要的行为。
香草JS会处理得更好
例如:
window.onbeforeunload = function beforeExit();
function beforeExit(){
return confirm("Are you sure you want to exit?");
}
使用此方法,如果用户试图刷新页面,您的函数将执行。“您将丢失数据”…应为“丢失”。“松散”是指其他的东西。只是让你的应用看起来更专业的一件小事。还有那个!在“是否确实要刷新此页面!”中,应为?,并且在其前面不应有空格。“are”中的“a”也应该大写(“are”),因为它是句子的开头。如果你不是以英语为母语的人,也许你应该让别人检查一下你的语法和拼写。问题的措辞也缺乏足够的标点符号,难以理解。您正在执行return prompt()
返回语句之后的任何代码都不会被删除executed@PatrickEvans好的,请告诉我如何解决这个问题,即使我删除了return,但仍然没有得到任何东西。我希望在用户尝试刷新脚本之前我在ScriptLoad中提到的目的时,这应该可以工作。这将只需将我提供给您的代码放入您的$(窗口)。on('beforeunload',函数(){
刚才我尝试过,无论您提到什么,仍然没有任何确认框或警报直接刷新页面。浏览器可能会阻止“beforeunload”事件中的警报、确认和提示,以避免出现恼人的弹出窗口。这正是我所想的,但没有提供进一步的信息,因此我无法提供比此answe更多的帮助rit不工作,你能给我发送工作代码吗?没有得到预期的输出,我的意思是没有得到警报,请检查你的系统,如果它工作,告诉我我有什么改变do@Anonymous,请尝试使用控制台.log()
。警报可能会被阻止。