web-dev-qa-db-ja.com

JavaScriptでページをリロードする好ましい方法は?

ボタンを使用して現在のページをリロードする方法はどれですか?

1 <input type="button" value="Reload" onClick="history.go(0)">
2 <input type="button" value="Reload" onClick="location.reload(true)">
3 <input type="button" value="Reload" onClick="window.location.reload(true)">
4 <input type="button" value="Reload" onClick="window.location.href=window.location.href">
5 <input type="button" value="Reload" onClick="document.location.reload(true)">
6 <input type="button" value="Reload" onClick="document.location.href=document.location.href">

ページのURLが頻繁に変わると、「フォールバック関数」のように

<a href="urlOfCurrentPage.html" onclick="window.location.reload(true);return false;">Reload</a>

私には役に立たないでしょう?

102
Mel

何をしたいかによって異なります。 4番目と6番目のメソッドはフォームデータをリロードせず、基本的にページに個別にアクセスします。 Firefoxの一部のバージョンでは、3番目の方法にも問題があります。それ以外は、個人的な好みとして5番目に行きます。それは最も明確なようです。

56
tloflin

次のこともできます。

wdwindow ||を表しますドキュメント

  • wd.location.assign(wd.location.href)URLに移動
  • wd.location.replace(wd.location.href)URLに移動して、履歴の前のページを置き換えます
  • wd.location.reload(<true/false/blank>)サーバー/キャッシュ/キャッシュからページを再読み込み
30
vol7ron