Как мне закрыть fancybox iframe после отправки - PullRequest
0 голосов
/ 02 ноября 2010

У меня есть iframe на siteB, с которого есть from from siteA, когда пользователь на siteB нажимает на кнопку подтверждения

<input type="submit" value="Save url" name="commit" method="post" id="url_submit">

Мне нужен лайтбокс, чтобы закрыть

я пытался добавить

$('#url_submit').click(function(){
  $.fn.fancybox.close();
});

на обоих сайтах и ​​ничего, и я в некотором замешательстве

Ответы [ 4 ]

5 голосов
/ 02 ноября 2010

Прежде всего, находятся ли siteA и siteB в одном домене? Если это так, вы можете попробовать

window.parent.jQuery.fn.fancybox.close();

Но если это не так, вам придется создать URL-адрес обратного вызова, который закрывает ваш fancybox, и когда ваша форма отправляется, перенаправьте на этот URL-адрес.

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <title></title>
    <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.3/jquery.min.js"></script>
</head>
<body>
    <script type="text/javascript">
        $(function () {
            window.parent.jQuery.fn.fancybox.close();
        });
    </script>
</body>
</html>
3 голосов
/ 28 декабря 2010

Попробуйте это:

parent.$.fancybox.close();
1 голос
/ 02 ноября 2010

Придумано отличное решение, которое действительно чисто добавлено

 TARGET="_top"

и оно закрыто после отправки

0 голосов
/ 02 ноября 2010

Немного смущен вашим вопросом. Вы можете открыть firebug и сделать $.fn.fancybox.close();?

...