MVC 从局部视图重新加载父视图

MVC reload Parent View from Partial View

我正在开发 MVC 应用程序。我有一个包含 Partial View.

Parent View

Partial View 有一个 submit 函数调用 Controller Method.

如果出现任何问题,我需要检索错误消息。如果一切顺利,我想重新加载父视图。

一开始我有一个

@using (Html.BeginForm("Create", "Controller", FormMethod.Post, new { enctype = "multipart/form-data", onsubmit = "javascript:return validate()" }))

Partial View 中。所以当一切顺利时,我可以调用一个方法来重新加载父视图

return RedirectToAction("Create", new { id = Id });

但我无法检索错误消息。

所以为了检索错误消息,并留在同一个视图中。我必须使用 Json.

所以我用

<form action="@Url.Action("Create", "Controller")" id="form" enctype="multipart/form-data" method="post">

并定义一个

$('form').submit(function (event)

调用控制器。但是我不能重定向到另一个方法来重新加载父视图。

我的父视图有一个类似

的模型

@model long

这是当前记录的ID。

当我重定向到另一个方法时。方法这样做...

 public ActionResult Create(Id =0)
        {
            return View(Id);
        }

如果我这样做 window.location.href =ParentView .. 我没有生成 ID。

我唯一能做的就是调用另一个控制器方法并设置

$('#div).html(result)

但我需要在父视图中设置一个 DIV。我不想那样做。我正在寻找另一种方法。

达到这两个目标的正确方法是什么?

谢谢

如果您希望使用 window.location.href 传递 id 值,您可以执行以下操作:

 window.location.href = '../Controller/Create?id=' + 1;

这里 1 是在创建操作中传递给参数 idid