我有一个webform,我想检测是否按下了F5按钮或是否刷新了页面。我知道回发但它不是我想要的。我有一个gridview,当单击一个按钮并为gridview设置参数值时,会在模式弹出窗口中加载。当点击刷新并且之前单击了模态弹出按钮时,模态弹出窗口在刷新后立即可见。我想检测页面是否刷新以防止这种情况。有任何想法吗?我想尝试Override但我不确定如何使用它。我尝试过Control.ModifierKeys,但我无法访问ModifierKeys。
答案 0 :(得分:5)
按F5或以物理方式单击浏览器刷新的行为与导航离开页面的行为类似。这是在事件window.onunload中捕获的。试试下面的snippet示例:
window.onbeforeunload = function (evt) {
var message = 'Are you sure you want to leave?';
if (typeof evt == 'undefined') {
evt = window.event;
}
if (evt) {
evt.returnValue = message;
}
return message;
}
这将捕获刷新并允许您执行某些操作或提示用户。
答案 1 :(得分:1)