Предпочитаемый способ перезагрузки страницы с помощью 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>) : перезагрузить страницу с сервера / кеша / кеша
vol7ron
источник