我有一个kendo窗口,当我点击kendo窗口中的关闭按钮时我需要拿起,但是我无法接收该事件。
我必须以一种特殊的方式来做,我解释一下。
我有一个包含iframe的kendo窗口,而且这个iframe正在根据某些参数进行更改。我需要的是在加载某个iframe时创建一个确认(最后一个iframe完成),当我点击kendo窗口中的关闭按钮时,我只需要能够拿起。
添加代码示例:
if (!ventanaNombrePantalla.data("kendoWindow")) {
ventanaNombrePantalla.kendoWindow({
width: "300px",
height: "117px",
title: "Tittle",
visible: false,
modal: true,
actions: ["Maximize", "Close"],
resizable: false,
// <%'Descripción: función que se ejecuta cuando se cierra la ventanaNombrePantalla para ocultar el div pantallaJV
// 'Inputs:
// 'Outputs:
// 'DFPJSCADA0700
// %>
close: function (e) {
//if ($("#ventanaNuevaPantalla").)
$("#divPantallaJV").hide();
dialogoAbierto = false;
var url = $("#ventanaNuevaPantalla").attr('src').split("/")[3];//That is a iframe inside the window.
if(url == "modalBlockLy.asp"){
e.preventDefault();
//Here is where i have the problem. I only want this, when the user do click on close.
//I close the window, with two ways, with the button [X]
//and invoing ventanaNombrePantalla.close()
}
$("#ventanaNuevaPantalla").attr("src", "");
//this.content($("#body").hide());
},
open: function () {
//this.content($("#body").show());
}
}).data("kendoWindow").center();
}
另一种方式:
$(ventanaNombrePantalla.element).closest('.k-window').find('.k-icon.k-i-close').on("click", function (e) {
//Here, ventanaNombrePantalla.element is null...
//debugger;
e.stopPropagation(); // In case you want to 'prevent' the window closing
});
答案 0 :(得分:0)
您是否尝试过使用窗口事件?
.Events(events => events.Close("myCloseEvent"))
答案 1 :(得分:0)
我可以通过这个选择器实现这一目标:
$(wnd.element).closest('.k-window').find('.k-header .k-window-actions a.k-button').on("click", function(e) {
检查它是否适合你。
答案 2 :(得分:0)
解决!用那段代码:
$(ventanaNombrePantalla).closest('.k-window').find('.k-icon.k-i-close').closest('a').on("click", function (e) {
if(!confirm("¿Desea cerrar la ventana?")){
e.stopPropagation();
e.preventDefault();
}
});