使用AJAX和部分视图更新来解决。具体步骤如下:
1.在视图中使用AJAX提交表单,并在JavaScript代码中添加以下代码:
$.ajax({
url: '@Url.Action("ActionName", "ControllerName")',
type: 'POST',
data: $('form').serialize(),
success: function (result) {
$('#partialViewContainer').html(result);
}
});
2.在控制器中,将视图的部分更新为部分视图:
[HttpPost]
public IActionResult ActionName(ViewModel model)
{
// 处理视图模型,然后渲染部分视图
return PartialView("_PartialViewName", partialViewModel);
}
3.将部分视图嵌入在主视图中,例如:
@await Html.PartialAsync("_PartialViewName", partialViewModel)
这样,在修改视图模型并提交表单时,只有部分视图会被更新,而不是整个页面重新加载。