Предпочитаемый способ перезагрузки страницы с помощью JavaScript? [закрыто]


103

какой способ перезагрузки текущей страницы (с помощью кнопки) вы бы предпочли?

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-адрес страницы часто меняется AFAIK, это `` резервная функция '', например

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

у меня не пойдет, да?


Обратите внимание, что числа 2 и 3 - это одно и то же
Матти Вирккунен

3
Число 4 и 6 ничего не перезагружает, если в URL-
адресе

2
Число 2, 3 и 5 реализовано не всеми браузерами, их использование *.location.reload()в качестве аргумента используется только для указания, следует ли игнорировать кеш. stackoverflow.com/questions/10876244/…
Dead.Rabit

OP пропустил самый предпочтительный из всех методов: location.reload ();
Doug S

Ответы:


57

Зависит от того, чем вы хотите заниматься. Четвертый и шестой методы не будут перезагружать данные формы, они, по сути, совершают отдельный визит на страницу. В некоторых версиях Firefox также есть проблемы с третьим методом. В остальном я бы выбрал пятый как личное предпочтение. Вроде самый ясный.


Второй метод (.reload) в некоторых случаях не работает.
Аристос,

Итак, «document.location.reload (true)» является кроссбраузерным и наиболее надежным?
Mel

@ Мел, я так считаю. На самом деле, окно и документ должны работать.
tloflin

10
обратите внимание, что когда вы используете document.location.reload () в POST, браузер спросит вас, хотите ли вы повторно отправить данные для перезагрузки страницы.
2010,

Виммел, да, чтобы исправить это, используя шаблон PRG: en.wikipedia.org/wiki/Post/Redirect/Get
Sarel Botha

30

Вы также можете:

wdпредставляет окно || документ :

  • wd.location.assign (wd.location.href) : перейдите по URL-адресу
  • wd.location.replace (wd.location.href) : перейти по URL-адресу и заменить предыдущую страницу в истории
  • wd.location.reload (<true / false / blank>) : перезагрузить страницу с сервера / кеша / кеша
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.