MVC 4 - VIews /部分视图和表单 - 如何仅更新提交的部分视图?

Hos*_*146 2 asp.net-mvc asp.net-mvc-4

我有一个包含表单和部分视图的MVC 4视图.主视图包含有关产品的信息,而部分视图包含产品的图像.

我想要做的是让部分视图包含它自己的形式,图像将显示在其上.如果我将此表单提交给控制器操作方法,修改它所基于的模型,然后让操作方法刷新局部视图,我的主视图的局部视图部分是否会更改而不是主视图本身?如果没有,是否有更好的方法来做我想做的事情.我只想更新主视图的局部视图部分.

Axe*_*eto 7

如果只想更新部分视图,则应使用AJAX调用检索数据.这样你就可以调用一个Controller,它将返回你需要的View(在本例中为Partial View).例:

CSHTML:

<div id="myPartialViewDiv">
    @{Html.RenderPartial("myPartialView", Model);}
</div>
Run Code Online (Sandbox Code Playgroud)

JS:

searchAdmin = function () {

    var URL = "myController/myAction";

    $.get(URL, { "optionalArg": optionalArg }, function (data) {
        $("#myPartialViewDiv").html(data);
    })
}
Run Code Online (Sandbox Code Playgroud)

myController的:

public JsonResult myAction(string optionalArg)
{
    // do something...

    return this.Json(whatIwantToReturn.ToList(), JsonRequestBehavior.AllowGet);
}
Run Code Online (Sandbox Code Playgroud)