刷新大内容后,Kendo UI窗口居中

时间:2013-04-03 23:04:31

标签: asp.net css asp.net-mvc kendo-ui

使用MVC 4我添加blank window并隐藏它。在按钮上单击我调用此javascript以获取内容并center窗口:

        var win = $("#myWindow").data("kendoWindow");
        win.content("Loading...");
        win.refresh({
            url: "@Url.Action("MyAction", "MyController")",
            data: { userloginid: "AAA" }
        });
        win.center();
        win.open();

内容为larger than a default window,因此win.center()计算已关闭,将窗口放得太远。

如何根据通过 refresh()命令获得的内容,将窗口设置为 center

1 个答案:

答案 0 :(得分:9)

问题似乎在于,您将窗口置于中心位置,而在此之后的一段时间内,新内容已完成加载。

换句话说:在窗口通过加载的内容获得新大小之前调用中心。

为防止这种情况发生,您应该绑定到窗口的刷新事件,并将其置于中心位置。

有些事情(要注意:只注册此事件一次):

var win = $("#myWindow").data("kendoWindow");
win.bind("refresh", function() {
    win.center();
    win.open();
});