2012-12-20 22 views
6

Bir uygulamam var. Bir butona tıkladığınızda kendo modal penceresini açmaya çalıştım. Açılıyor. Uygulamam bir etki alanında ve Kendo penceresinin içeriği başka bir etki alanından. Şimdi, modal pencereyi Kendo penceresinin içindeki bir düğmeyle kapatmak istiyorum. İşte sorun başlıyor. Modal pencereyi kapatamıyorum. Google'ı kullanarak aradım ancak herhangi bir çözüm bulamadım - bir tanesini biliyor musun?Kendo penceresini pencere içeriğinden nasıl kapatabilirim?

cevap

4

önceki cevap yorumlarınızı okuduktan sonra sana yanıltıcı soru olduğunu düşünüyorum. modal, başka bir alan adı ve closebutton hakkında konuşuyorsunuz, fakat yorumlarınız aslında hiçbir şeyle alakalı değil. Yorumlarınızdan, bir KendoUI window içinde bir button (aslında bir closebutton ama başka biri olabilir) yerleştirmek istediğiniz ve ek olarak bir sayfayı (bu arada) farklı bir etki alanında görüntülemek istediğiniz sonucuna varıyorum. Bu gerçekten istediğiniz ve etki alanı ve güvenlikle ilgili problemleri önceden bildiren bir şeyse, content.template numaralı telefonu kullanmanız ve button ve10 sayfalarını içeren iframe numaralı bir şablonu tanımlamanızı öneririz. Böyle

şey ...

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(); 
}); 

Hatta closebutton için aşağıdaki stil tanımlayarak sayfanın geri kalanı üstündeki düğmeye float yapabilir.

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

Sevgili Onabari cevabınız için çok teşekkür ederim. Kapat düğmesinin (kendo penceresi içeriğinde) pencereyi kapatamadığını anladım. Kendo penceresinin içeriğinde değil, istemci tarafında kendo penceresinde (üstte veya altta) kapat düğmesini kapatmalıyım. Tekrar teşekkürler. – Saikat

2

Aşağıdaki JavaScript kodu, modalkendoWindow'u açmak için button'u tanımlar. Bir kez tıklandığında, window'un gövdesinin içinde istediğiniz gibi kapatarak button tuşlarına basabilirsiniz.

JavaScript kodu:

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(); 
}) 

ve 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

Cevabınız OnaBari için çok teşekkür ederim. Ama bu benim sorunumun gerçek çözümü değil. Modalın içeriği başka bir alandan geliyor. ve kapat düğmesi içeriğin içinde olacak. Şimdi bu modal pencereyi butona tıklayarak nasıl kapatabilirsiniz. Aynı etki alanı ise sorun çıkarmaz. Ancak ana sayfa ve kalıcı pencere farklı etki alanındadır. – Saikat

+0

İçeriği nasıl yüklüyorsunuz, iframe belki? – OnaBai

+0

window.kendoWindow ({ modal: doğru, animasyon: yanlış, sürüklenebilir: yanlış, içeriği: 'http://www.xxxx.com' genişliği: "830px", yüksekliği: "650 piksel", resizable: false, // title: false, visible: false }) veri ("kendoWindow") başlığı (Başlık) .center(). Open(); – Saikat

İlgili konular