javascript - Kendo UI 窗口动态打开

标签 javascript kendo-ui

我想使用 kendoui 窗口打开动态数量的窗口,理想情况下,如果该窗口已按名称存在,它只会显示相同的窗口。

所以我正在想象一个 JavaScript 函数

win(name, url, width)

我会从不同的地方调用它

<button onclick="win('my window', '/example/view', 100);">click me</button>

我不太确定如何使用其名称创建这样的窗口以及如何检查它是否已经存在。

该应用程序非常简单,一系列菜单,每个菜单打开一个窗口,但菜单是从数据库内容驱动的,因此我无法预定义所有窗口

最佳答案

在您的 win 函数中,您应该检查是否已经创建了 KendoUI 窗口。如果是这样,您可以重复使用现有的并打开它。否则你就创建它。

示例:

function win (name, url, width) {
    var my_win = $("#" + name).data("kendoWindow");
    if (my_win) {
        // already exist, reuse it
        my_win.open();
    } else {
        // does not exist, create it
        // create a div with id "name" for my window and append it to 
        // to a container ("example") where all the windows are going to be.
        my_win = $("<div id='" + name + "'></div>").kendoWindow({
              title: name,
              content: url,
              width: width,
              appendTo: "#example",
              visible: true
        });
    }
}

编辑:要从 anchor 元素 (a) 调用此功能,请将 win 全局定义到您的页面,并按如下方式定义 anchor 。

  <a href="javascript: win('id1', '/page1', 200);">Open id1 window</a>
  <a href="javascript: win('id2', '/page2', 200);">Open id2 window</a>

示例如下:http://dojo.telerik.com/@OnaBai/ekIba/2

关于javascript - Kendo UI 窗口动态打开,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30431887/

相关文章:

excel - 剑道 UI 编辑器 : Copy/Paste from Excel with format

javascript - kendo ui dropdownlist-如何进行手动级联?

javascript - 渲染带有 alpha channel 的 png 时, Three.js 会从显卡中泄漏像素

javascript - 如何在我们写的时候自动扩展文本区域

javascript - 将字符串转换为 Moment 对象

javascript - 获取不正确的日期,将时间戳转换为新日期

javascript - 在外部页面用nodejs获取HTML标签的值

javascript - Vue 的 Kendo UI 网格中的复选框列

kendo-ui - MVVM 绑定(bind)到 Kendo Grid 非常慢?

javascript - 如何在 Kendo UI 条形图中使条形图具有不同的颜色?