2

我有一个视图“TestView1.cshtml”,其中有一个由以下代码定义的 Kendo 窗口控件。

 @(Html.Kendo()
    .Window()
    .Name("TestView1Window")
    .Title("About Kendo")
    .Content(@Html.RenderPartial(~/Views/PartialViews/TestPartialView2.cshtml))
     .Draggable()
     .Resizable()
     .Width(600)
    .Actions(actions => actions.Pin().Minimize().Maximize().Close())
    .Events(ev => ev.Close("onClose"))
    .Render();
    )

我在 TestView1.cshtml 中的一个按钮的帮助下打开了这个窗口。

<span id="undo" style="display:none" class="k-button">Click here to open the window.</span>

现在,当窗口加载部分视图“TestPartialView2”时,会呈现包含由以下代码定义的 Kendo 按钮控件:-

@(Html.Kendo()
.Button()
.Name("CloseKendoWindow").
.HtmlAttributes(new {@class="Test2",style="font-size:15px;"})
)

现在我想在“CloseKendoWindow”按钮单击上关闭部分视图“TestPartialView2.cshtml”,并确保 TestView1 视图的其余部分完好无损,就像加载时一样。

基本上,我想要一个 jQuery 解决方案,通过单击 TestPartialView2.cshtml 上的按钮来关闭 TestView1 中的 Kendo Window 控件。

如果对我在这里尝试实现的目标有任何疑问,请发表评论。

4

1 回答 1

0

我不熟悉 Telerik 控件,但您可以通过下面的 jQuery 代码尝试:

$(document).ready(function () {
        var wnd = $("#window").data("kendoWindow");


        $("#closebtnId").click(function(e) {
            wnd.close();
        });
    });

更新

你能试试这个吗

$(#yourbutton).closest(".k-window-content").data("kendoWindow").close();

*用按钮名称替换你的按钮。

或者这个

 $(document).ready(function () {
        $('#nameOfYourWindow').data().kendoWindow.bind('refresh', function(e) {
            var win = this;
            $('#btnClose').click(function() {
                win.close();
            });
        });
    });
于 2014-11-30T09:28:58.593 回答