由於我是MVC5新手,我可能會錯誤地考慮這個問題。調用操作方法,關閉對話框並刷新父
我有一個CustomerInfo.cshtml視圖,它列出了CustomerContacts。在他們旁邊是一個'+'圖標,它將打開一個對話窗口並允許他們添加一個新的CustomerContact。
在對話框打開時,我調用CustomerContactController創建GET方法(將customerId設置爲傳遞給我的模型並將其傳遞給視圖)。
保存我打電話給CustomerContactController創建POST方法設置值並保存到數據庫。
此時我該如何關閉對話窗口並刷新父CustomerInfo.cshtml頁面,以便新聯繫人將出現在列表中。所有的Action方法都要求我返回一些東西。
我從CustomerInfo.cshtml打開我的對話框中查看這樣的:
@(Html.Kendo().Window()
.Name("windowContact")
.Title("New Customer Contact")
.LoadContentFrom("Create", "CustomerContact", new { customerId = Model.Id })
.Draggable()
.Width(680)
.Visible(false)
.Events(events => events.Open("centerWindow"))
)
在對話窗口中我有一個剃鬚刀形式。這裏是對話框的底部:
<input type="submit" value="Save" id="btnSave" class="btn btn-primary" />
<input type="button" value="Cancel" id="btnCancel" class="btn btn-default" />
}
<script>
$("#btnCancel").click(function() {
$("#windowContact").data("kendoWindow").close();
});
</script>
這是我目前正在做的,它帶我回到CustomerInfo視圖,但刷新。唯一能順利使用AJAX的方法嗎?
return RedirectToAction("CustomerInfo", "Customer", new { id = custContact.CustomerId });
你可以發佈你的代碼嗎?打開對話框?你正在使用哪個對話框? – 2015-02-24 06:12:04
使'CustomerInfo.cshtml'成爲局部視圖,只要添加新客戶並關閉對話框,就可以在jQuery Ajax調用的幫助下再次加載CustomerInfo.cshtml部分。 – 2015-02-24 06:14:00
我發佈了我的代碼。我設置了我的取消按鈕,但在保存時,我不知道在創建POST操作被調用並且聯繫人保存到數據庫後該怎麼辦。 – JTunney 2015-02-24 06:15:48