Перезагрузка страницы на Javascript
Рассмотрим разные способы перезагрузки страницы. Для наглядности приведем готовые примеры.
Перезагрузка страницы в JS
За перезагрузку страниц в JS отвечает метод location.reload(). Он обновляет вкладку браузера и работает как при нажатии кнопки «Обновить страницу».
location.reload();
или
window.location.reload();
Пример перезагрузки страницы кликом на кнопку или ссылку:
<a href=»#»onclick=»location.reload(); return false;»>Обновить страницу</a>
Перезагрузка страницы с задержкой
В коде прописывается тот же location.reload() выполняемый с задержкой setTimeout() в 2 секунды.
setTimeout(function(){
location.reload();
}, 2000);
или
<ahref=»#»onclick=»reload_interval(2000); return false;»>Обновить страницу через 2 секунды</a>
<script>
functionreload_interval(time){
setTimeout(function(){
location.reload();
}, time);
}
</script>
Перезагрузка страницы с подтверждением
Чтобы пользователь мог подтвердить действие, можно использовать метод вызова диалогового сообщения:
confirm.
if (confirm(‘Вы действительно хотите обновить страницу?’)) {
window.location.reload();
}
Или по клику на ссылку:
<ahref=»#»onclick=»reload_confirm(); return false;»>Обновить страницу</a>
<script>
functionreload_confirm(){
if (confirm(‘Вы действительно хотите обновить страницу?’)) {
window.location.reload();
}
}
</script>
Пример:
Обновление родительской страницы из IFrame. Для обращения к ресурсам родительской страницы из IFrame применяется объект parent.
parent.location.reload();
<ahref=»#»onclick=»parent.location.reload(); return false;»>Обновить родительскую страницу</a>
Перезагрузка страницы с помощью HTML
Добавление мета-тега <metahttp-equiv=»refresh» content=»0″> в <head> страницы заставит её перезагрузиться. Значение атрибута content больше 0 задает задержку в секундах.
<!doctypehtml>
<htmllang=»ru»>
<head>
<title>Document</title>
<metahttp-equiv=»refresh»content=»1″>
</head>
<body>
…
</body>
</html>
Перезагрузка страницы из PHP
Обновить страницу с сервера можно c помощью функции header(), отправив заголовок «Refresh: 5» (интервал в 5 секунд).
header(«Refresh: 5»);
Внимание! Перед вызовом функции не должно быть отправки контента в браузер, к примеру, echo.
