Odpowiedzi:
JavaScript 1.0
window.location.href = window.location.pathname + window.location.search + window.location.hash;
// creates a history entry
JavaScript 1.1
window.location.replace(window.location.pathname + window.location.search + window.location.hash);
// does not create a history entry
JavaScript 1.2
window.location.reload(false);
// If we needed to pull the document from
// the web-server again (such as where the document contents
// change dynamically) we would pass the argument as 'true'.
.reload(true)zostanie dodany do historii? Jeśli tak, jak tego uniknąć poprzez przeładowanie?
location.reload();
Zobacz tę stronę MDN, aby uzyskać więcej informacji.
Jeśli odświeżasz po onclick, musisz natychmiast zwrócić wartość false
location.reload();
return false;
location.reload()i window.location.reload()?
locationjest taka sama jak window.locationza windowto globalny obiekt.
return false;jeśli dzwonisz do tego z kliknięcia linku.
window.location.reload();na czytelność, ponieważ locationmoże to być zmienna lokalna - podczas gdy zwykle unikamy zmiennych o nazwie window.
Oto 535 sposobów na przeładowanie strony za pomocą JavaScript , z których najłatwiej jest location = location.
Oto pierwsze 50:
location = location
location = location.href
location = window.location
location = self.location
location = window.location.href
location = self.location.href
location = location['href']
location = window['location']
location = window['location'].href
location = window['location']['href']
location = window.location['href']
location = self['location']
location = self['location'].href
location = self['location']['href']
location = self.location['href']
location.assign(location)
location.replace(location)
window.location.assign(location)
window.location.replace(location)
self.location.assign(location)
self.location.replace(location)
location['assign'](location)
location['replace'](location)
window.location['assign'](location)
window.location['replace'](location)
window['location'].assign(location)
window['location'].replace(location)
window['location']['assign'](location)
window['location']['replace'](location)
self.location['assign'](location)
self.location['replace'](location)
self['location'].assign(location)
self['location'].replace(location)
self['location']['assign'](location)
self['location']['replace'](location)
location.href = location
location.href = location.href
location.href = window.location
location.href = self.location
location.href = window.location.href
location.href = self.location.href
location.href = location['href']
location.href = window['location']
location.href = window['location'].href
location.href = window['location']['href']
location.href = window.location['href']
location.href = self['location']
location.href = self['location'].href
location.href = self['location']['href']
location.href = self.location['href']
...
window.window.window['window'].location = window['window'].window['window']['window']['window']['window']['window']['window']['location']
Możesz wykonać to zadanie za pomocą window.location.reload();. Ponieważ istnieje wiele sposobów, aby to zrobić, ale uważam, że jest to odpowiedni sposób na ponowne załadowanie tego samego dokumentu za pomocą JavaScript. Oto wyjaśnienie
window.locationMożna użyć obiektu JavaScript
window: w JavaScript reprezentuje otwarte okno w przeglądarce.
location: w JavaScript zawiera informacje o bieżącym adresie URL.
locationObiekt jest jak fragment windowobiektu i nazywa się po window.locationobiekcie.
location obiekt ma trzy metody:
assign(): używane do załadowania nowego dokumentureload(): służy do ponownego załadowania bieżącego dokumentureplace(): używane do zastąpienia bieżącego dokumentu nowymWięc tutaj musimy użyć reload(), ponieważ może nam pomóc w przeładowaniu tego samego dokumentu.
Więc użyj tego jak window.location.reload();.
Aby poprosić przeglądarkę o pobranie strony bezpośrednio z serwera, a nie z pamięci podręcznej, możesz przekazać trueparametr do location.reload(). Ta metoda jest kompatybilna ze wszystkimi głównymi przeglądarkami, w tym IE, Chrome, Firefox, Safari, Opera.
replace()okazało się rozwiązaniem, którego szukałem, ponieważ musiałem ponownie załadować stronę z niewielką zmianą ciągu zapytania.
Próbować:
window.location.reload(true);
Parametr ustawiony na „prawda” ponownie ładuje świeżą kopię z serwera. Pozostawienie go spowoduje wyświetlenie strony z pamięci podręcznej.
Więcej informacji można znaleźć na stronie witrynie MSDN oraz w dokumentacji Mozilli .
Szukałem niektórych informacji dotyczących przeładowań na stronach pobranych za pomocą żądań POST, na przykład po przesłaniu method="post" formularza.
Aby ponownie załadować stronę z danymi POST, użyj:
window.location.reload();
Aby ponownie załadować stronę odrzucającą dane POST (wykonaj żądanie GET), użyj:
window.location.href = window.location.href;
Mam nadzieję, że może to pomóc innym szukającym tych samych informacji.
POSTżądaniem.
GETi POSTmetodami
window.location.href = window.location.hrefnie ładuje strony ponownie, jeśli bieżący adres URL zawiera #. Możesz usunąć skrót, jeśli go nie potrzebujesz window.location.href = window.location.href.split('#')[0];.
Aby ponownie załadować stronę za pomocą JavaScript, użyj:
window.location.reload();
To działa dla mnie:
function refresh() {
setTimeout(function () {
location.reload()
}, 100);
}
Jeśli umieścisz
window.location.reload(true);
na początku strony, bez żadnych innych warunków określających, dlaczego ten kod działa, strona zostanie załadowana, a następnie będzie się ładować ponownie, dopóki nie zamkniesz przeglądarki.
location.href = location.href;
location.reload()?
Za pomocą przycisku lub po prostu umieść go w tagu „a” (kotwicy):
<input type="button" value="RELOAD" onclick="location.reload();" />
Wypróbuj te dla innych potrzeb:
Location Objects has three methods --
assign() Used to load a new document
reload() Used to reloads the current document.
replace() Used to replace the current document with a new one
history.go()
Automatyczne ładowanie strony po 20 sekundach.
<script>
window.onload = function() {
setTimeout(function () {
location.reload()
}, 20000);
};
</script>
Dziękuję, ten post był bardzo pomocny, nie tylko w celu ponownego załadowania strony z sugerowaną odpowiedzią, ale także dał mi pomysł na umieszczenie ikony przycisku jQuery w przycisku:
<button style="display:block; vertical-align:middle; height:2.82em;"
title="Cargar nuevamente el código fuente sin darle un [Enter] a la dirección en la barra de direcciones"
class="ui-state-active ui-corner-all ui-priority-primary"
onclick="javascript:window.location.reload(true);">
<span style="display:inline-block;" class="ui-icon ui-icon-refresh"></span>
[<b>CARGAR NUEVAMENTE</b>]
</button>
To powinno działać:
window.location.href = window.location.href.split( '#' )[0];
lub
var x = window.location.href;
x = x.split( '#' );
window.location.href = x[0];
Wolę to z następujących powodów:
Alternatywnie, możesz użyć najnowszej oficjalnej metody do tego zadania
window.location.reload()
Metoda reload () służy do ponownego załadowania bieżącego dokumentu.
Metoda reload () działa tak samo jak przycisk reload w przeglądarce.
Domyślnie metoda reload () ponownie ładuje stronę z pamięci podręcznej, ale można zmusić ją do ponownego załadowania strony z serwera, ustawiając parametr forceGet na true: location.reload (true).
location.reload();
Możesz po prostu użyć
window.location=document.URL
gdzie document.URL pobiera bieżący adres URL strony, a window.location przeładowuje go.