我正在尝试将 PartialView 或任何其他视图从操作方法返回到 ajax 帖子。我想将 ParitalView 的内容显示为来自 ajax 成功函数的 Jquery Modal 弹出窗口或任何可能的方式。
带有注册表的“MyRegistrationView”在下面提到了表单提交按钮上的 ajax 后调用。
$.ajax({
url: url, //http://localhost/MyRegistration/RegisterUser
type: 'POST',
dataType: 'json',
data: ko.toJSON(RegistrationInfoModel),
contentType: "application/json; charset=utf-8",
success: function (result) {
//Do something
},
error: function (request, status, error) {
//Do something
}
});
上面的 ajax 调用转到名为“MyRegistrationController”的控制器,操作方法如下。
[HttpPost]
public JsonResult RegisterUser(RegistrationInfo model)
{
//Register User
....
if(successful)
{
return Json(new { data = PartialView("_ShowSuccessfulModalPartial") });
}
}
现在
- 如何在 ajax 的“成功”功能中取回“_ShowSuccessfulModalPartial”的“内容”,并将其显示为同一注册页面上的模态弹出窗口。
- 如果我想将其返回/重定向到其他视图,如果我将 JsonResult 作为我的 ActionMethod 的返回类型,我该怎么做。
- 如何将注册过程中的 ModalErrors 发送回我的视图并在 ValidationSummary 下显示它们。
(注意:如果我不使用 JsonResult 作为返回类型,我会得到 ajax 'parseerror' Unexpected token <)