ビュー "TestView1.cshtml"があり、内部に次のコードで定義されている剣道ウィンドウコントロールがあります。
@(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」がレンダリングされます。
次のコードで定義される剣道ボタンコントロール:-
@(Html.Kendo()
.Button()
.Name("CloseKendoWindow").
.HtmlAttributes(new {@class="Test2",style="font-size:15px;"})
)
次に、「CloseKendoWindow」ボタンをクリックして部分ビュー「TestPartialView2.cshtml」を閉じ、残りのTestView1ビューがロードされたときの状態のままであることを確認します。
基本的に、私はjQueryソリューションがTestPartialView2.cshtmlにあるボタンをクリックするとTestView1の剣道ウィンドウコントロールを閉じるようにします。
ここで私が達成しようとしていることに疑問がある場合は、コメントを残してください。
私はtelerikコントロールに慣れていませんが、以下のjQueryコードを介して試すことができます。
$(document).ready(function () {
var wnd = $("#window").data("kendoWindow");
$("#closebtnId").click(function(e) {
wnd.close();
});
});
更新
これを試すことができますか
$(#yourbutton).closest(".k-window-content").data("kendoWindow").close();
* yourbuttonをボタン名に置き換えます。
またはこれ
$(document).ready(function () {
$('#nameOfYourWindow').data().kendoWindow.bind('refresh', function(e) {
var win = this;
$('#btnClose').click(function() {
win.close();
});
});
});