在新页面上继续 PartialView 渲染 所以在修复上述问题后,我添加了分页。
我处理部分视图和分页的控制器方法是
public ActionResult CreateAdmin(string sortOrder, int? page)
{
int pageSize = 10;
int pageNumber = 1;
if (page != null)
pageNumber = Convert.ToInt32(page);
var result = SortResult(sortOrder);
return PartialView("AdminSearchResult", result.ToPagedList(pageNumber, pageSize));
}
在我的部分观点中,我正在路过
@model PagedList.IPagedList<MyApplication.Models.Administration>
用于动态渲染局部视图的 jquery 是
<script type="text/javascript">
$(document).ready(function (e) {
$("#SearchResultbtn").click(function (e) {
e.preventDefault();
$("#searchResult").load('@Url.Action("AdminSearchResult", "Administration")');
});
});
我的视图只是一个表格,如下所示
<table class="searchResult" border="1" width="100%">
<thead>
<tr>
<th>
</th>
<th>
@Html.ActionLink("Last Name", "AdminSearchResult", new { sortOrder = ViewBag.LastNameSortParm, currentFilter = ViewBag.CurrentFilter, @class = "linkClicked" })
</th>
<th>
Middle Name
</th>
<th>
@Html.ActionLink("First Name", "AdminSearchResult", new { sortOrder = ViewBag.FirstNameSortParm, currentFilter = ViewBag.CurrentFilter })
</th>
</tr>
</thead>
<tbody>
@foreach (var item in Model)
{
<tr class="parent">
<td>
@item.LastName
</td>
<td>
@item.MiddleName
</td>
<td>
@item.FirstName
</td>
</tr>
}
</tbody>
</table>
我的分页和排序工作正常。问题是,当我单击“名字”的 ActionLink 或任何听者对整个部分视图进行排序时,会在新页面中呈现。
我的猜测是 jquery 需要更新,但如何。