提交后刷新整个页面(Fancybox)

时间:2015-03-19 10:54:34

标签: javascript php jquery html fancybox

我有一个页面,用户将点击该按钮,然后会出现一个fancybox弹出窗口,并且有一个php文件,其中包含您可以更新的所有字段。我想要发生的是,在我按下更新按钮后,整个页面将刷新并关闭弹出窗口。但正在发生的事情是,在我按下更新后,只有弹出窗口刷新。我怎么能这样做?

在此页面中,我回显了所有用户信息

emp_refer.php

       <a id="various5" href="http://i-refer.elitebpocareers.com/refer/updateInfo.php">
                    <button class="button">Edit Personal Information</button>
                </a>


        <SCRIPT TYPE = "text/javascript">

        $("#various5").fancybox({
         'width'             : '75%',
         'height'            : '75%',
         'autoScale'         : false,
         'transitionIn'      : 'none',
         'transitionOut'     : 'none',
         'type'              : 'iframe'
        });

        </SCRIPT>

然后在更新后的第2页中,我执行此代码,弹出窗口仅刷新

echo "<meta http-equiv='refresh' content='0; url=emp_refer.php'>";

1 个答案:

答案 0 :(得分:0)

你能做的是:

在第2页中,更新后运行fancybox.close()方法而不是meta标记,如:

echo "<script>parent.jQuery.fancybox.close();</script>";

然后,在您的fancybox初始化脚本( emp_refer.php 页面)中,将onClosed回调添加到您的API选项并在其中运行location.reload()它像:

$("#various5").fancybox({
    'width': '75%',
    'height': '75%',
    'autoScale': false,
    'transitionIn': 'none',
    'transitionOut': 'none',
    'type': 'iframe',
    'onClosed': function () {
        location.reload();
        return;
    }
});

注意:如果您使用的是fancybox v2.x,请使用afterClose回调