У меня есть диалоговое окно jQuery Modal с iframe, iframe включает форму. Когда пользователь отправляет форму, я хотел бы закрыть модальное диалоговое окно.
Мне удалось сделать это, добавив последний бит кода, написанного в этом вопросе, но проблема в том, что он закрывает диалог только один раз, если я снова открываю его и пытаюсь закрыть, работа.
jquery модальный скрипт на index.php:
<script type="text/javascript">
function showRegDialog(url) {
$(function() {
var $this = $(this);
var horizontalPadding = 30;
var verticalPadding = 30;
$('<iframe id="externalSite" scrolling="no" frameborder="0" class="externalSite" src="' + url + '" />').dialog({
title: ($this.attr('title')) ? $this.attr('title') : 'Choose your location',
autoOpen: true,
width: 700,
height: 700,
modal: true,
resizable: true,
autoResize: true,
overlay: {
opacity: 0.5,
background: "black"
}
}).width(700 - horizontalPadding).height(700 - verticalPadding);
});
}
</script>
ссылка на index.php для вызова showRegDialog модальный:
<a href="javascript:showRegDialog('/register.php');">Register now</a>
Это содержимое register.php
<html>
<body>
<form action="" method="POST" onsubmit="parent.closeModal();">
<input type="text">
<input type="submit">
</form>
</body>
</html>
Я добавил это в index.php:
function closeModal() {
$("#externalSite").dialog("close");
}