Как закрыть всплывающее окно и перенаправить страницу - PullRequest
3 голосов
/ 26 сентября 2011

Мой сайт использует php, и я создаю онлайн-викторину и шоу-тест в всплывающем режиме.
В настоящее время, когда я хочу перенаправить мою страницу, используя скрипт ниже. это идет к моей домашней странице, НО это все еще в режиме всплывающего окна. Я хочу закрыть всплывающее окно и перейти на домашнюю страницу после того, как я нажму "Готово".

Как я могу это сделать?

<script type="text/javascript">

window.parent.location = "../../../"

</script>

Ответы [ 3 ]

8 голосов
/ 26 сентября 2011

Вы можете получить доступ к окну, открывшему всплывающее окно, со свойством window.opener во всплывающем окне. Итак, что-то вроде этого должно работать:

window.opener.location.replace(redirectUrl);
window.close;

Если вы хотите поместить это поведение в событие onclick на кнопку отправки, которую вы строите так:

echo "<input type=\"submit\" 
       name=\"finishattempt\" 
       value=\"".get_string("finishattempt", "quiz")."\" 
       onclick=\"$onclick\" />\n";

Вам необходимо присвоить String window.opener.location.href='someUrl';window.close(); переменной $onclick, прежде чем отобразить кнопку подтверждения.

2 голосов
/ 26 сентября 2011

Вы можете попробовать этот код (используется для кнопки HTML):

<input type="button" onclick="parent.window.opener.location='http://homepage.com'; window.close();">

И посмотрите на похожие темы: Javascript: закрыть всплывающее окно, открыть новое окно и перенаправить

[EDIT] См. эту статью тоже

1 голос
/ 26 сентября 2011

таким образом, вы можете сделать это ..

<script type="text/javascript">
function close_window(){
    window.opener.location = 'pop_up.php';
    window.close();
}
</script>

HTML-код ..

<body>
<form method="post" name="frm_2" id="frm_2">
    <input type="submit" name="btn_close" id="btn_close" onclick="return close_window();" />
</form>
</body>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...