我正在使用带有分页功能的 WebGrid 和 AJAX 弹出窗口来添加新条目。我注意到,在添加条目后,WebGrid 底部的分页链接变为非活动状态。
弹出窗口调用控制器的 Save 操作,完成以下操作:
return PartialView("_PersonGrid", pModel.Persons);
这里使用了三个视图。一个索引、一个网格和一个弹出窗口。网格嵌入在索引中,可以通过单击网格和索引上的按钮来调用弹出窗口。
索引视图具有以下代码:
@using (Ajax.BeginForm(new AjaxOptions { InsertionMode = InsertionMode.Replace, UpdateTargetId = "myUserGrid" }))
{
<div id="myUserGrid">
@Html.Partial("_PersonGrid", Model.Persons)
</div>
<br />
//other code
}
网格视图 (_PersonGrid.cshtml) 是:
@model IEnumerable<CIMsWebApp.Client.Group.Entities.IPerson>
@{ var grid = new WebGrid(Model, canSort: true, canPage: true, defaultSort: "UserName", ajaxUpdateContainerId: "myUserGrid"); }
@grid.GetHtml(
tableStyle: "dataGrid",
headerStyle: "header",
alternatingRowStyle: "evenRow",
columns: grid.Columns
(
grid.Column(header: "User Name", columnName: "UserName", format: item => Html.Raw("<a href='#' class='userNames' data-personid='"+item.PersonId+"'>" + item.UserName + "</a>"), canSort: false),
grid.Column(header: "Role(s)", columnName: "Rolebuilder", canSort: false),
grid.Column(header: "Active", columnName: "ActiveIndBuilder", canSort: false),
grid.Column(header: "Action", format:
@<span><input type="button" class="edit-user" id="@item.PersonId" value="EDIT" />
</span>, canSort: false)
)
)
最后弹出视图是:
@model CIMsWebApp.Models.PersonModel
@using (Html.BeginForm("Save", "Person", FormMethod.Post, new { id = "formUser" }))
{
//code
}
当我第一次到达页面或刷新它时,它们再次变为活动状态。