我有一个ASP.NET MVC解决方案,其中一个页面由一个表组成,每次通过ajax请求加载20行项。我在这个表的底部有一个链接,允许用户加载20个下一行(在表的末尾加载的行保留现有行)。
所以我有:
Index.cshtml:主页
<table class="zebra-striped">
<thead>
<tr>
<th>@UserResource.CompanyName</th>
<th>@UserResource.City</th>
<th>@UserResource.Street</th>
<th width="70"></th>
</tr>
</thead>
<tbody id="ListCompanies">
@Html.Action("RowsList")
</tbody>
</table>
@Ajax.ActionLink("Load more", "RowsList", new { page = 2 }, new AjaxOptions { HttpMethod = "GET", UpdateTargetId = "ListCompanies", InsertionMode = InsertionMode.InsertAfter, OnComplete = "AjaxCompleted" })
RowsList.cshtml:局部视图
@model IEnumerable<Domain.Models.Company>
@foreach (var item in Model)
{
<tr id="@item.CompanyID">
<td>@item.CompanyName</td>
<td>@item.City.CityName</td>
<td>@item.Street</td>
<td nowrap>
@Html.ActionLink("Edit", ...)
@Html.ActionLink("Delete", "Delete", ...)
</td>
</tr>
}
问题:用于加载下一页的链接有一个静态href,如下所示:
http://localhost/Admin/Company/RowsList?page=2
每次点击链接时,我都需要:
由于:
,下一次加载应该是可能的http://localhost/Admin/Company/RowsList?page=3
http://localhost/Admin/Company/RowsList?page=4
http://localhost/Admin/Company/RowsList?page=5
...
此链接位于我的index.cshtml页面中,该页面未更新(因为只重新加载了部分视图RowsList)。
知道如何才能正确更新此链接?也许我不得不重构我的代码以获得更简单的'MVC'解决方案?
谢谢!
答案 0 :(得分:0)
为包含PageNumber
和Company
属性的视图制作ViewModel,并使用数据传递页码
如果您使用客户端脚本并通过ajax
加载数据,则可以使用jQuery