无法在Kendo Window中关闭其内容窗口

时间:2013-03-28 07:00:09

标签: javascript jquery html jsp kendo-ui

根据this page,我所要做的就是从窗口内容调用以下代码,因为我没有使用iframe:

$(buttonInsideWindow).closest(".k-window-content").data("kendoWindow").close();

它不起作用。当我尝试从控制台手动关闭它时,它会在您尝试检索kendoWindow时返回null。 (也就是说,当调用$(buttonInsideWindow).closest(".k-window-content")但它上面的.data("kendoWindow")返回null时,它返回正确的div。

我在窗口内容中使用自定义按钮,手动调用close事件。这就是我首先调用窗口的方法:

function otherCusLogInWindow_Open() 
{
    var otherCusLogInWindow = $("#otherCusLogInWindow");

    otherCusLogInWindow.kendoWindow({
        width: "535px",
        height: "850px",
        title: "ASDF",
        modal: true,
        actions: ["Minimize", "Maximize", "Close"],
        content: "otherCusLogIn.jsp",
        iframe: false,
        visible: false,
        draggable: true,
        resizable: true

    }).data("kendoWindow").center().open();
}

在窗口内容中,关闭事件很简单:

function closeWindow(parentFuncCall) {
    $("#otherCusLogInWindow").closest(".k-window-content").data("kendoWindow").close();
}

为了解决这个问题,我无法出于其他原因使用iframe。我需要让它在目前的状态下工作。

我该如何解决这个问题?

3 个答案:

答案 0 :(得分:2)

试试这个:

$("#otherCusLogInWindow").data("kendoWindow").close();

以下是有关获取客户端对象引用的文档:http://docs.kendoui.com/getting-started/web/window/overview#accessing-an-existing-window

答案 1 :(得分:2)

当您的内容页面返回视图而非部分视图时,可能会出现此问题,因为您的内容页面的新引用为jquery.js。因此jquery数据方法无效。

答案 2 :(得分:2)

window.parent.$("#otherCusLogInWindow").data("kendoWindow").close()