2012-12-20 34 views
6

我有一个应用程序。在一个按钮点击我试图打开一个Kendo模式窗口。它开放。我的应用程序位于一个域中,Kendo窗口的内容来自另一个域。现在我想用Kendo窗口内的一个按钮关闭模态窗口。这个问题开始。我无法关闭模式窗口。我用谷歌搜索它,但没有找到任何解决方案 - 你知道吗?如何从窗口内容关闭Kendo窗口?

回答

4

阅读您的意见,我以前的答复后,我认为你的问题是误导。您可以谈谈modal,另一个域名closebutton但是从您的意见中可以看出,没有什么是真正相关的。我从您的意见中得出结论,您希望在KendoUI window中放置button(实际上是closebutton,但可能是其他任何),并且您还想显示一个页面(顺便说一句)在不同的域中。如果这是您真正想要的 - 并且预见与跨域和安全性相关的问题 - 我建议您应该实际使用content.template并定义一个模板,其中包括您的buttoniframe引用页www.xyz.com

事情是这样的......

var myWindow2 = $("#id2").kendoWindow({ 
    modal : true, 
    draggable: false, 
    content : { 
     template: '<a href="javascript:void(0);" id="close2" class="k-button">Close</a>' + 
       '<iframe src="http://www.xyz.com" frameborder="0" class="k-content-frame"></iframe>' 
    }, 
    visible : false, 
    width : 400, 
    height : 200, 
    resizable: false, 
    iframe : true 
}).data("kendoWindow"); 

$("#open2").on("click", function() { 
    myWindow2.center(); 
    myWindow2.open(); 
}); 

$("#close2").on("click", function() { 
    myWindow2.close(); 
}); 

你甚至可能通过定义closebutton下面的样式让页面的其余部分顶部的按钮float

#close2 { 
    position: absolute; 
    top: 10px; 
    left: 10px; 
    z-index: 10000; 
} 
+0

亲爱的Onabari非常感谢你的回复。我知道关闭按钮(在kendo窗口内容中)无法关闭窗口。我必须在客户端kendo窗口中(顶部或底部)关闭按钮,而不是在kendo窗口的内容中。再一次感谢你。 – Saikat

2

以下JavaScript代码定义了一个button用于打开modalkendoWindow。点击后,您可以在window的正文内按button以随时关闭它。

JavaScript代码:

var myWindow = $("#id1").kendoWindow({ 
    title : "hi", 
    visible: false, 
    modal : true 
}).data("kendoWindow"); 

$("#open").on("click", function() { 
    console.log("opening"); 
    myWindow.center(); 
    myWindow.open(); 
}); 
$("#close").on("click", function() { 
    console.log("closing"); 
    myWindow.close(); 
}) 

HTML

<a href="#" id="open" class="k-button">Open</a> 

<div id="id1"> 
    <p>this is the content of my window</p> 
    <a href="#" id="close" class="k-button">Close</a> 
</div> 
+0

非常感谢您的回答OnaBari。但这不是我问题的实际解决方案。模态的内容来自另一个域。并关闭按钮将在内容中。现在如何通过点击按钮关闭这个模式窗口。如果它是相同的域,则不会发生问题。但父页面和模态窗口处于不同的域。 – Saikat

+0

你是怎么加载内容的,'iframe'也许? – OnaBai

+0

window.kendoWindow({ 模态:真, 动画:假, 拖动:假, 内容: 'http://www.xxxx.com' 宽度: “830px”, 高度: “650像素”, resizable:false, // title:false, visible:false })。data(“kendoWindow”)。title(Title).center()。open(); – Saikat