Всплывающее окно для возврата данных в родительский
У меня есть всплывающее окно, открытое с помощью window.open()
. Теперь я хочу, чтобы пользователь мог щелкнуть одну из двух ссылок в этом новом окне: "Разрешить" или "Не разрешать".
Когда пользователь нажимает на одну из этих ссылок, окно "всплывающее окно" должно закрываться и возвращать "разрешить" или "не разрешать" или что-то вдоль этих строк, true
/false
будет делать, родительского окна.
Возможно ли это? Если да, то как?
код:
var authWindow = window.open('auth.php', 'authWindow', 'options...');
Затем всего 2 анкера внутри auth.php
?
Ответы
Ответ 1
В окне вызова (родителя) добавьте такой JS-код:
function HandlePopupResult(result) {
alert("result of popup is: " + result);
}
В коде дочернего окна добавьте следующее:
function CloseMySelf(sender) {
try {
window.opener.HandlePopupResult(sender.getAttribute("result"));
}
catch (err) {}
window.close();
return false;
}
И у вас есть такие ссылки, чтобы закрыть всплывающее окно:
<a href="#" result="allow" onclick="return CloseMySelf(this);">Allow</a>
<a href="#" result="disallow" onclick="return CloseMySelf(this);">Don't Allow</a>
Ответ 2
вы можете использовать window.opener
для этого.
Ответ 3
<script type='text/javascript'>
window.opener.location.reload();
window.close();
</script>