为什么我的 kendo window 会自己打开?

Why does my kendo window open by itself?

我正在使用 Kendo 创建一个 window 弹出窗口,但是,这个 window 应该只在用户单击按钮时显示。显示给您的代码使 window 在请求网页时自动打开。我做了一些研究,但一无所获,有什么想法吗?

更多信息:这将用于表单,并且内部将有一个签名板,因此当该板 (window) 已被签名时,table 中的单元格(点击此处签名) 应替换为签名。

.cshtml,

<style>
    #example {
        min-height: 500px;
    }

    #undo {
        text-align: center;
        position: absolute;
        white-space: nowrap;
        padding: 1em;
        cursor: pointer;
    }

    .armchair {
        float: left;
        margin: 30px 30px 120px 30px;
        text-align: center;
    }

        .armchair img {
            display: block;
            margin-bottom: 10px;
        }

    .k-window-content a {
        color: #BBB;
    }

    .k-window-content p {
        margin-bottom: 1em;
    }

    @@media screen and (max-width: 1023px) {
        div.k-window {
            display: none !important;
        }
    }
</style>


<table>

    <tr>
        <td>
            <div id="example">
                <div id="window">
                    <H1>This is the window</H1>
                </div>
                <span id="undo" style="display:none" class="k-button hide-on-narrow">Click here to sign</span>
                <div class="responsive-message"></div>
            </div>
        </td>
    </tr>



</table>

<link rel="stylesheet" href="styles/kendo.common.min.css" />
<link rel="stylesheet" href="styles/kendo.default.min.css" />
<link rel="stylesheet" href="styles/kendo.default.mobile.min.css" />

<script src="js/jquery.min.js"></script>
<script src="js/kendo.all.min.js"></script>

<script>
    $(document).ready(function () {
        var myWindow = $("#window"),
            undo = $("#undo");

        undo.click(function () {
            myWindow.data("kendoWindow").open();
            undo.fadeOut();
        });

        function onClose() {
            undo.fadeIn();
        }

        myWindow.kendoWindow({
            width: "600px",
            title: "About Alvar Aalto",
            visible: false,
            actions: [
                "Pin",
                "Minimize",
                "Maximize",
                "Close"
            ],
            close: onClose
        }).data("kendoWindow").center().open();
    });
</script>

我现在有了这个按钮:

单击此处打开 window。

和这个函数:

$("#open").click(function (e) {
            myWindow.data("kendoWindow").open(); 

        });

但是打不开window?

window 立即打开,因为您明确告诉它立即打开:

myWindow.kendoWindow({
    ....
}).data("kendoWindow").center().open();
  • myWindow.kendoWindow({ == 把我的Window 变成 Kendo Window

  • .data("kendoWindow") == 得到那个 Kendo Window

  • 的引用
  • .center().open() == 将它置于屏幕中心(仍然隐藏)并打开它。

从您的初始化代码中删除 .center().open() 并仅在单击按钮时使用它。

https://dojo.telerik.com/@Stephen/uXeJe