部分的なビューを含む kendo.window を開いています。[OK] をクリックしたら、変更したデータを保存し、ウィンドウを閉じてベース ページをリロードします。何らかの理由で、それは動作しません。部分ビューをフル ページとして開きます。
どうすればこれを修正できますか? 部分ビューがページとして開かないようにするには、何を返す必要がありますか?
ありがとう、
これが私がこれまでに持っているものです。
ベースページ:
<div id="windowBadgeIMGDiv" class="k-content">
<div id="windowBadgeIMG" style="display:none">
</div>
<script type="text/javascript">
function editDetails(id) {
var windowBadgeIMG = $("#windowBadgeIMG");
windowBadgeIMG.kendoWindow({
modal: true,
width: "950px",
title: "Modify badge picture",
content: {
url: "/Home/BadgePicture",
data: { id: id }
},
deactivate: function () {
}
});
windowBadgeIMG.data("kendoWindow").center();
windowBadgeIMG.closest(".k-window").css({ top: 100 });
windowBadgeIMG.data("kendoWindow").open();
}
</script>
部分的なビュー:
<%using (Html.BeginForm("BadgePicture", "Home", FormMethod.Post, new { enctype = "multipart/form-data", id = "ImgForm", name = "ImgForm" }))
{ %>
<input type="hidden" name="hdnBadgeId" id="hdnBadgeId" value="<%= Model.Id%>" />
<table>
<!--My editable fields go here-->
<tr>
<td style="padding-top: 20px;" align="center" colspan="4">
<button id="btnSubmit" type="submit"><asp:Label runat="server" Text="<%$ Resources:Global, Update %>" /></button>
</td>
</tr>
</table>
<%} %>
コントローラ
[HttpPost]
public PartialViewResult BadgePicture(string[] hdnBadgeId, HttpPostedFileWrapper Image1)
{
//Do some work with the data
return PartialView(model);
}
更新:私の解決策
PartialView の代わりに View に置き換えて使用しmodal: true,
ますiframe: true,
。content: "/Home/BadgePicture/" + id,
送信時にウィンドウを閉じるには: 外部コンテンツ内からウィンドウを閉じる