0

我知道这是定义 Kendo Window 的一种晦涩方式,但这是我们在应用程序中使用的方式,并且在大多数情况下都可以正常工作。当用户关闭窗口时,我正在努力捕获 Close 事件的语法。我有以下内容适用于所有其他意图和目的:

$("<div id=\"" + windowName + "\" />").appendTo(document.body).kendoWindow({
                draggable: true, resizable: true, width: width, height: height,
                scrollable: false, modal: false, actions: ["Close"]
});

如何捕获 Close 事件以触发另一个功能?我试过添加

$("<div id=\"" + windowName + "\" />").appendTo(document.body).kendoWindow({
                draggable: true, resizable: true, width: width, height: height,
                scrollable: false, modal: false, actions: ["Close"], Close:"noteClose",
});

在几个变体中,包括在 noteClose 之后添加 () 并加上“close:”,正如我在另一种定义窗口的方法中看到的那样。

任何人都可以帮助使用正确的语法吗?

更新:@OnaBai 为我的问题提供了完美的解决方案。另请参阅 OnaBai 的答案,了解将参数传递给函数的语法

4

1 回答 1

0

有两个问题:

  1. 事件的名称不是Close但是close
  2. 处理程序需要是一个函数。

所以应该是:

$("<div id=\"" + windowName + "\" />").appendTo(document.body).kendoWindow({
    draggable: true,
    resizable: true,
    width: width,
    height: height,
    scrollable: false,
    modal: false,
    actions: ["Close"],
    close:noteClose
});

编辑:如果你想传递一些参数,noteClose那么你需要做:

$("<div id=\"" + windowName + "\" />").appendTo(document.body).kendoWindow({
    draggable: true,
    resizable: true,
    width: width,
    height: height,
    scrollable: false,
    modal: false,
    actions: ["Close"],
    close: function() {
        noteClose(parameterVariable);
    }
});
于 2013-07-09T14:20:20.957 回答