C# 带复选框的中继器分页问题

C# 带复选框的中继器分页问题,c#,asp.net,pagination,repeater,C#,Asp.net,Pagination,Repeater,我有一个中继器,可以显示数据库中的数据,每个项目都有一个复选框,用于“标记”要删除的项目等(数据库中没有用于chekbox的项目!) 因为我使用分页(在数据访问和表示级别上),所以无法在页面移动之间保留复选框值 如何解决这个问题?我过去解决这个问题的方法是在复选框上有一个处理程序,该处理程序在切换复选框时向服务器返回一些AJAX以存储该复选框的状态。此信息存储在用户会话中。在分页期间,我检查每个复选框的状态,并在呈现页面时适当地设置它。任何依赖于复选框状态的操作都将使用会话中的信息。一旦操作完成

我有一个中继器,可以显示数据库中的数据,每个项目都有一个复选框,用于“标记”要删除的项目等(数据库中没有用于chekbox的项目!)

因为我使用分页(在数据访问和表示级别上),所以无法在页面移动之间保留复选框值


如何解决这个问题?

我过去解决这个问题的方法是在复选框上有一个处理程序,该处理程序在切换复选框时向服务器返回一些AJAX以存储该复选框的状态。此信息存储在用户会话中。在分页期间,我检查每个复选框的状态,并在呈现页面时适当地设置它。任何依赖于复选框状态的操作都将使用会话中的信息。一旦操作完成,我将从会话中删除状态。您还必须了解如何处理页面导航方面的问题。

您所说的“您还必须了解如何处理页面导航方面的问题”是什么意思?当用户导航到另一个页面时,您希望如何处理复选框状态?状态应该在不同的页面之间保持还是应该重置?如果将其持久化,则在执行初始页面加载时需要检查状态。如果您不希望它持久化,那么您需要检查初始页面加载并删除任何预先存在的数据,以便它与呈现的内容相匹配……当您再次返回页面时,我的意思是。更多问题:为什么在服务器端保持它们的状态不好(在移动到另一个页面左右之后)?为什么我应该使用javascript?您可以将所有这些都放到viewstate中,并让复选框进行完整的回发,但在我看来,这是一个非常糟糕的用户体验,同样困难。您可以尝试将状态存储在cookie中,但我仍然支持javascript。