我在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();
});
答案 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();
},
});