1

我是 MVC (MVC3) 的新手,所以不确定实现这一点的最佳方法。

我想创建一个单一的“主”视图(非强类型)。这个“主”视图将包含多个强类型的局部视图,每个视图都包含一个表单。因此,每个部分视图都将回发到它们自己的 POST 操作,该操作可以执行任何操作。我看到的问题是,当局部视图回发时,它只需要更新局部视图本身,而不影响页面上的其他局部视图。

当我现在从部分视图回发时,它只是单独返回部分视图,而不是整个“主”页面。

如何在 MVC3 中实现此功能?(从高层的角度)

谢谢

4

1 回答 1

1

您可以通过 AJAX 发布数据。在我的示例中,我使用 jQuery:

<div id="first-form" class="form-container">
   @Html.Partial("FirstPartial")
</div>

<div id="second-form" class="form-container">
   @Html.Partial("SecondPartial")
</div>

// and here go rest forms

您的部分观点可能如下:

@model YourModelClass
@using (Html.BeginForm())
{
    // some fields go there
}
<input type="button" value="Save Form Data" class="save-button"/>

Js将遵循:

$("input.save-button").on("click", function () {
    var button = $(this);
    var container = button.closest("div.form-container");
    var url = container.find("form").attr("action");   

    container.busy($.post(url, function (response) {
       container.html(response);
    }));

    return false;
});
于 2012-04-05T06:46:56.867 回答