检测按下F5并刷新

Eri*_*ric 2 vb.net asp.net refresh keydown

我有一个webform,我想检测是否按下F5按钮或页面是否刷新.我知道回发但它不是我想要的.我有一个gridview,当单击一个按钮并为gridview设置参数值时,会在模式弹出窗口中加载.当点击刷新并且之前单击了模态弹出按钮时,模态弹出窗口在刷新后立即可见.我想检测页面是否刷新以防止这种情况.有任何想法吗?我想尝试Override但我不确定如何使用它.我试过Control.ModifierKeys,但我无法访问ModifierKeys.

Jos*_*lio 5

按F5或物理单击浏览器刷新的行为类似于导航离开页面.这是在事件window.onunload中捕获的.试试下面的代码段示例:

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;
}
Run Code Online (Sandbox Code Playgroud)

这将捕获刷新并允许您执行某些操作或提示用户.