Metode yang lebih disukai untuk memuat ulang halaman dengan JavaScript? [Tutup]


103

cara mana untuk memuat ulang halaman saat ini (menggunakan tombol) yang Anda inginkan?

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">

Karena URL halaman sering berubah AFAIK seperti 'fungsi fallback'

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

tidak akan berhasil untuk saya, bukan?


Perhatikan bahwa angka 2 dan 3 adalah hal yang sama
Matti Virkkunen

3
Nomor 4 dan 6 tidak akan memuat ulang apa pun jika ada # hadir di url
jontro

2
Nomor 2, 3 & 5 tidak diterapkan oleh semua browser, gunakan *.location.reload()sebagai argumen hanya digunakan untuk menentukan apakah cache harus diabaikan. stackoverflow.com/questions/10876244/…
Dead.Rabit

OP melewatkan metode yang paling disukai: location.reload ();
Doug S

Jawaban:


57

Tergantung pada apa yang ingin Anda lakukan. Metode keempat dan keenam tidak akan memuat ulang data formulir apa pun, mereka pada dasarnya melakukan kunjungan terpisah ke halaman. Beberapa versi Firefox juga bermasalah dengan metode ketiga. Selain itu, saya memilih yang kelima sebagai preferensi pribadi. Sepertinya yang paling jelas.


Metode kedua (.reload) tidak berfungsi dalam beberapa kasus.
Aristos

jadi, "document.location.reload (true)" adalah lintas-browser aman dan yang paling kuat?
Mel

@Mel, saya yakin begitu. Sungguh, jendela dan dokumen harus berfungsi.
tloflin

10
perhatikan bahwa ketika Anda menggunakan document.location.reload () pada POST browser akan menanyakan apakah Anda ingin mengirim ulang data untuk memuat ulang halaman.
wimh

Wimmel, ya untuk memperbaikinya menggunakan pola PRG: en.wikipedia.org/wiki/Post/Redirect/Get
Sarel Botha

30

Anda juga dapat melakukan:

wdmewakili jendela || dokumen :

  • wd.location.assign (wd.location.href) : buka URL
  • wd.location.replace (wd.location.href) : buka URL dan ganti halaman sebelumnya dalam riwayat
  • wd.location.reload (<true / false / blank>) : memuat ulang halaman dari server / cache / cache
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.