0

我有以下问题。我打开一个带有外部脚本的颜色框​​。

我在打开的脚本中编辑一个字段,然后按一个将输入保存在数据库中的按钮。这是通过 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) 命令时,颜色框才会关闭。但这不是我想要的,因为这样父级将被重新加载。

我在这里阅读了很多解决方案,但我不知道为什么它不起作用。

希望有人可以帮助我。

谢谢,弗兰克

4

1 回答 1

0

您是否尝试将onClosed事件处理程序添加到颜色框初始化代码并将location.reload(true);调用移到那里:

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

这样,您$.colorbox.close();就可以调用 ajax 成功,并且仅在颜色框关闭后才应启动重新加载。

于 2012-09-17T15:59:57.680 回答