在AJAX调用后关闭colorbox

时间:2012-09-17 15:40:26

标签: jquery ajax colorbox

我有以下问题。我打开一个带有外部脚本的彩盒。

我在打开的脚本中编辑一个字段,然后按下一个将输入保存在数据库中的按钮。 这是通过AJAX完成的。在AJAX返回成功之后,我将一些内容写入主网页并想要关闭颜色框。但最后一件事不会发生。

这是我的剧本

$.ajax({
            type: "POST",  
            url: "./editfield_AJAX.php",
            data: {"q_table": q_table, "q_field": q_field, "q_idfield": q_idfield, "q_id": q_id, "waarde":$waarde},
            dataType: "text",
            success:function(data){

                window.parent.$("#" + q_table+q_field).html(data);

                //location.reload(true);
                // Reload the parent and close Cbox
                window.parent.$.colorbox.close();


        }
    });

仅当我禁用location.reload(true)命令时,颜色框才会关闭。但这不是我想要的,因为那时父母将被重新加载。

我在这里已经阅读了很多解决方案,但我无法弄清楚它为什么不起作用。

希望有人可以帮助我。

谢谢, 弗兰克

1 个答案:

答案 0 :(得分:0)

您是否尝试将onClosed事件处理程序添加到colorbox初始化代码并在其中移动location.reload(true);调用:

$('selector').colorbox({
    onClosed: function() {
        location.reload(true);
    }
});

通过这种方式,您可以在ajax成功时调用$.colorbox.close();,并且只有在颜色框关闭后才能启动重新加载。

相关问题