【发布时间】:2015-02-13 23:35:48
【问题描述】:
我正在尝试使用Ajax.BeginRouteForm 创建可以分页和搜索的结果列表。总体思路是,视图顶部的菜单和布局不会被重绘,但搜索结果的中心区域会被重绘。
所以我有两个控制器操作,一个 GET,它返回一个初始模型和视图,一个 POST,它获取模型,从中获取页面/搜索信息,然后运行搜索,返回相同的模型和查看。
我看到的是 POST 有效,获得了新结果,并且正在使用这些新结果编译视图(调试代码告诉我这一点),但客户端的表单没有被重绘。
当我添加 InsertionMode 和 UpdateTargetId 参数时,我遇到了 view-inside-the-view 问题,其中整个菜单都在表单区域内呈现。
@using (Ajax.BeginRouteForm(ContentRoutes.EmailContentList,
new { instance = UserContext.InstanceId },
new AjaxOptions
{
HttpMethod = "POST",
OnBegin = "blockForm();",
OnComplete = "unblockForm();",
InsertionMode = InsertionMode.Replace,
UpdateTargetId = "frmContent"
},
new { id = "frmContent" }))
{
【问题讨论】:
标签: ajax asp.net-mvc razor