web-dev-qa-db-ja.com

Webアプリでブラウザの更新を無効にできますか?

ウェブサイトの更新を無効にしたい。無効にする方法はありますか F5、 Ctrl-R、またはWebページにリロードしますか?

12
kiran

提案があります。このページには回答ボックスがあります。

(以下にあなたの回答ラベルを付けてください)

  • その中にいくつかのテキストを入力します。
  • 次に、このページを更新します

更新すると警告メッセージが表示されるので、更新機能を無効にするのではなく、同様の警告メッセージを表示することをお勧めします。

2
Waqas Raja
window.onbeforeunload = function () {return false;}

これにより、ユーザーが確認しない限りページを離れることができなくなります。のみ更新しないため、ページを機能させるには、これを自分でコーディングする必要があります。

あなたはそれで何をしているのか言ったことがないので、私はそれをそのままにしました。

15
Wesley Murch

いいえ、無効にする方法はありません。

"このアクションを再度送信しますか?"ダイアログを回避しようとしている場合は、 Post/Redirect/Get を使用します。 =。

7
alex

ページに入るたびにCookieを確認してください。 Cookieが存在する場合は、更新が行われたことがわかります。

Cookieがない場合は、期間がゼロのCookieを作成します(ブラウザがまだ開いているまでのみ存在します)

3
Gideon

更新クリックを無効にする方法がわかりません(まだ自分で必要です)サーバーサイドスクリプトを使用して「リダイレクト」を停止する以外に、jQueryを無効にするのは非常に簡単です。 F5

function disableF5(e) { if (e.which == 116) e.preventDefault(); };
// To disable f5
$(document).bind("keydown", disableF5);
// To re-enable f5
$(document).unbind("keydown", disableF5);
2
SpYk3HH

いいえ、そのような方法はありません。更新しないようにユーザーに警告することができます

2
Jigar Joshi

一部のブラウザで機能するトリックがいくつかあるかもしれませんが、ページを更新できないことを保証できるものは何もありません。ブラウザとWeb標準は広く公開されているため、ユーザーはブラウザを簡単にハッキングして、実装したものをすべて回避できます。

更新によってユーザーエクスペリエンスに悪影響が及ぶ場合は、テキストによる警告を表示することをお勧めします。

これがバグ(べき等性の欠如など)を修正するためのものである場合は、代わりにバグの修正を検討する必要があります。

F5キーを押して、ユーザーがページを更新できないようにする方法があります。 bodyタグ内で次のコードを試してください。

<body onkeydown="return (event.keyCode != 116)">
0
Ejardy

Ctrl + f5、ctrl + R、f5、backspaceを無効にしたい場合は、この単純なコードを使用できます。このコードはMozilaとChromeで機能しています。このコードをbodyタグ内に追加してください:

<body onkeydown="return (event.keyCode == 154)">