ユーザーがページを更新するためにF5キーを押したかどうかを確認するにはどうすればよいですか?ページを更新すると、質問カウンタは増加しません。私は数十のチュートリアルで言及されている多くのコードスニペットをテストしましたが、正しく動作しませんでした。ブラウザの更新を検出する
空白のWebフォームがあり、ユーザーがクライアント側でF5キーを押しているかどうかを確認したいとします(リフレッシュしないようにします)。
私はセッション変数を使用できますが、ユーザーが自分のサイトの別のページに移動して戻ってきた場合は、リフレッシュではなく新しい訪問と見なしたいと思います。したがって、これはセッションスコープ変数ではありません。
ありがとうございました。
アップデート:私は見つけることができる唯一の回避策は、以下のようにloadメソッドをオーバーライドし、ベースページから私のページを継承することでした:
public class PageBase : System.Web.UI.Page
{
protected override void OnLoad(EventArgs e)
{
base.OnLoad(e);
this.Session["LastViewedPage"] = Request.RawUrl;
}
}
とすべてのページで、私はこの場合は知って興味があった場合にはリフレッシュです:
if (this.Session["LastViewedPage"].ToString() == Request.RawUrl)
{
// This is a refresh!
}
あなたは「セッション変数を使用できます」と言っているのは、最後に訪問したページを保存するだけではいかがですか? – tomfumb
私はすべてのページにそれを保存する必要があります。実際には、基本ページを使用するのは悪い考えではないかもしれません... – Kamyar