关闭Fancybox模式窗口并在提交登录表单后重新加载页面

时间:2012-11-16 04:44:44

标签: jquery fancybox fancybox-2

我在FancyBox 2模态iframe窗口中打开了一个登录表单。但是当您提交表单时,网页将在模式中打开。

有人可以告诉我是否以及如何使Fancybox模式关闭,并在提交登录表单时重新加载基础页面?

这是我当前的代码 - 在functions.js文件中:

  $(".login-popup").fancybox({
    maxWidth    : 310,
    height      : 300,
    autoSize    : false,
    closeClick  : false,
    openEffect  : 'none',
    closeEffect : 'none'
  });

这是我的登录链接:

<a class="login-popup" data-fancybox-type="iframe" href="/popup/login" title="">Login</a>

感谢您的帮助,

步骤

编辑1:

感谢您的帮助。很抱歉成为一个完整的新手,但我遇到了父母的问题。$。fancybox.close();处理表单submit()事件。这是我现在正在使用的代码,但它并没有关闭窗口,因为我做错了。有什么想法吗?感谢。

$(".login-popup").fancybox({
    closeEffect : 'none',
    'afterClose':function () {
      window.location.reload();
    },
  });

$(".login-form").submit(function(){
  parent.fancyBoxClose();
});

1 个答案:

答案 0 :(得分:4)

要从iframe中关闭fancybox,您可以在parent.$.fancybox.close(); form事件中使用submit()

然后在Fancybox初始值设定项上添加一个onClose事件,该事件将重新加载页面:

$(".login-popup").fancybox({
    maxWidth    : 310,
    height      : 300,
    autoSize    : false,
    closeClick  : false,
    openEffect  : 'none',
    closeEffect : 'none',
    'afterClose':function () {
        window.location.reload();
    },
  });