Sayfayı JavaScript ile yeniden yüklemek için tercih edilen yöntem? [kapalı]


103

mevcut bir sayfayı (bir düğme kullanarak) yeniden yüklemek için hangi yolu tercih edersiniz?

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

Sayfanın URL'si sık sık değiştiğinden AFAIK gibi bir 'geri dönüş işlevi'

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

benim için çalışmayacak, değil mi?


2 ve 3 sayılarının aynı şey olduğuna dikkat edin
Matti Virkkunen

3
Url'de

2
Sayı 2, 3 ve 5 tüm tarayıcılar tarafından uygulanmaz *.location.reload(), bağımsız değişken olarak kullanın , yalnızca önbelleğin göz ardı edilip edilmeyeceğini belirtmek için kullanılır. stackoverflow.com/questions/10876244/…
Dead.Rabit

OP en çok tercih edilen yöntemi kaçırdı: location.reload ();
Doug S

Yanıtlar:


57

Ne yapmak istediğine bağlı. Buradaki dördüncü ve altıncı yöntemler, herhangi bir form verisini yeniden yüklemeyecek, esasen sayfayı ayrı bir ziyaret ediyorlar. Firefox'un bazı sürümlerinde üçüncü yöntemle de sorunlar var. Bunun dışında kişisel tercih olarak beşinci ile giderdim. En net görünüyor.


İkinci yöntem (.reload) bazı durumlarda işe yaramaz.
Aristos

yani, "document.location.reload (true)" tarayıcılar arası güvenlidir ve en sağlamıdır?
Mel

@Mel, öyle olduğuna inanıyorum. Gerçekten, pencere ve belgenin ikisi de çalışmalıdır.
tloflin

10
Bir POST'ta document.location.reload () işlevini kullandığınızda, tarayıcının sayfayı yeniden yüklemek için verileri yeniden göndermek isteyip istemediğinizi soracağını unutmayın.
wimh

Wimmel, PRG modelini kullanmayı düzeltmek için evet: en.wikipedia.org/wiki/Post/Redirect/Get
Sarel Botha

30

Şunları da yapabilirsiniz:

wd temsil eder pencereyi || belge :

  • wd.location.assign (wd.location.href) : URL'ye gidin
  • wd.location.replace (wd.location.href) : URL'ye gidin ve geçmişte önceki sayfayı değiştirin
  • wd.location.reload (<true / false / blank>) : sayfayı sunucudan / önbellekten / önbellekten yeniden yükleyin
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.