我有一个带有ajax分页的表,我可以选择任何页面和查看数据,但如果我在浏览器中按下刷新,它会显示第一页。刷新后我怎么能待在同一个桌面上?
这是代码的一部分。
@using (Ajax.BeginForm(new AjaxOptions() { UpdateTargetId = "users_rows", Url = Url.Action("UsersRows") }))
{
<table>
<thead>
<tr>
<th>@Resources.Id</th>
<th>@Resources.Login</th>
<th>@Resources.Password</th>
<th>@Resources.FirstName</th>
<th>@Resources.LastName</th>
<th>@Resources.Birthday</th>
<th>@Resources.IsActive</th>
<th>@Resources.Role</th>
<th>@Resources.RegistrationDate</th>
</tr>
</thead>
<tbody id="users_rows">
@Html.Partial("UsersRows", Model)
</tbody>
</table>
}
@Html.Partial("Pager", Model)
Pager.cshtml:
@model UserManagmentStudio.Domain.IPager
@if (Model.PageCount > 1)
{
for (Int32 i = 1; i <= Model.PageCount; i++)
{
@Ajax.ActionLink(i.ToString(), "Index", new {page = i},
new AjaxOptions()
{
UpdateTargetId = "users_rows",
Url = Url.Action("UsersRows", new { page = i }),
}
)
@: 
}
}
答案 0 :(得分:0)
没有办法实现这一点,因为您使用AJAX进行分页,因此从不重新加载当前页面。如果你删除了AJAX调用并为你的分页执行完整的回发,浏览器的url将会更新,如果用户点击<kbd>F5</kbd>
,他将不会忘记当前页面的跟踪,因为它将成为查询字符串的一部分
答案 1 :(得分:0)
刷新后会恢复默认行为。您可以将当前用户的页面存储在cookie中,然后将其作为参数传递给寻呼机。您必须为每个唯一页面用户访问存储cookie - 它不包括寻呼机页面,因为它是相同的。好消息是你不需要在用户离开后保留cookie。
除此之外,没有办法做到这一点。