我有一个带有以下对象的网格:

public PagedList<GridList> PagedList { get; set; }


public class GridList
{
    public Employee EmployeeItem { get; set; }
    public bool isChecked { get; set; }
}

我的aspx在一个循环中实现了该表,然后为每个Employee放置了一个复选框:

 <%foreach (var item in Model.PagedList )
   {%>
      <tr>
         <td align="center">
            <%: Html.CheckBox(item.EmployeeItem.ID.ToString(), item.isChecked)%>
        </td>
     </tr>
<% }%>

用户更改页面时,我需要保持所有复选框处于选中状态。 因此,如果他选择一个页面的2个或3个选项,然后更改页面编号,则当他返回此页面时,应标记相同的复选框。

我尝试了许多解决方案,但在这里我不会评论它们,只是希望得到更好的解决方案。 我尝试的所有订单都遇到无法解决的问题。

当用户单击以转到另一个页面时,代码将转到[HttpGet]方法。

谢谢您的帮助。

===============>>#1 票数:0

执行分页时,您将必须以某种方式将检查后的值发送到服务器,否则您将丢失它们。 您有两种可能:

  1. 将复选框与寻呼机一起放在HTML表单内,并使寻呼机链接提交此表单的按钮。

  2. 使用AJAX执行分页并仅刷新DOM的网格部分,并且不要触摸复选框。 这样,他们将保留自己的价值观。

  3. 订阅分页器链接的onclick事件,并在其中取消默认操作( evt.preventDefault() ),收获复选框的值并将其附加到将执行分页的url的查询字符串中。 然后重定向到这个新的URL。

  ask by Dan-SP translate from so

未解决问题?本站智能推荐: