Eu tenho um diálogo modal jQuery que carrega uma página diferente em um iframe.
A página iframed tem um formulário e estou tentando fazer com que ele feche o diálogo modal do jQuery automaticamente depois que o usuário enviou o formulário.
É mesmo possível?
Obrigado,
Código LoadModal (em first.html):
<script type="text/javascript">
function showModal(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>
<button onclick="showModal("/iframe.html");">Add</button>
código de iframe (iframe.html)
<html>
<body>
<form action="" method="POST">
<input type="text" name="test">
<input type="submit">
</body>
</html>
depois que o formulário iframe é enviado, eu gostaria de fechar a caixa de diálogo aberta pela função first.html jQuery.
Respostas:
3 para resposta № 1Se isso significa que você quer fechar o diálogo dentro do iframe, você pode tentar algo assim
parent.$("#your-dialog-id").dialog("close");
se necessário, posso fornecer um exemplo completo mais tarde ...
1 para resposta № 2
Eu tenho outra solução (o aceito não funcionou no meu caso):
parent.$(".ui-dialog-titlebar-close").click();
0 para resposta № 3
Você pode enviar um exemplo ou código-fonte?
Se você não puder, tente colocar um achor com target = "" attr.