根据this page,我所要做的就是从窗口的内容调用以下代码,因为我没有使用iframe:
$(buttonInsideWindow).closest(".k-window-content").data("kendoWindow").close();
这不管用当我尝试从控制台手动关闭它时,当您尝试检索kendoWindow时,它返回一个null。(也就是说,当调用$(buttonInsideWindow).closest(".k-window-content")
时,它返回正确的div,但其上的.data("kendoWindow")
返回null)。
我在窗口内容中使用了一个自定义按钮,它手动调用关闭事件。这是我首先调用窗口的方式:
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();
}
在窗口内容中,close事件是微不足道的:
function closeWindow(parentFuncCall) {
$("#otherCusLogInWindow").closest(".k-window-content").data("kendoWindow").close();
}
只是为了摆脱这种方式,我不能使用iframe的其他原因。我需要让它在目前的状态下工作。
我该如何解决问题?
4条答案
按热度按时间bqjvbblv1#
试试这个:
$("#otherCusLogInWindow").data("kendoWindow").close();
以下是有关获取客户端对象引用的文档:http://docs.kendoui.com/getting-started/web/window/overview#accessing-an-existing-window
eqqqjvef2#
当你的内容页面返回一个视图,而不是一个部分视图时,可能会遇到这个问题,因为你的内容页面有一个新的引用
jquery.js
。所以jquery
数据方法不起作用。vlf7wbxs3#
sbtkgmzw4#
需要注意的一点是,如果你可以在窗口是iframe时关闭窗口,但窗口引用为null,那么你可能会导入一个额外的jquery引用。第二个jquery引用的作用域将与创建Kendo窗口的第一个jquery引用的作用域不同。