【发布时间】:2015-04-29 13:23:40
【问题描述】:
我有一个要求,我必须存储 DataTable 的状态,例如 'pagination'、'sorting'、'search' 等。为此,我有将 'bStateSave' 属性设置为 'True' 并且效果很好。我知道'bStateSave' 以Cookie 的形式保存状态。现在我有另一个要求,我必须重置 DataTable 并在用户登录的情况下重新初始化它。
外汇:
if (sessionUserLogin == 'True') {
$('#myTableId').dataTable({ "bStateSave": false, "bDestroy": true});
$('#myTableId').dataTable({ "bStateSave": true });
}
else {
$("#myTableId").dataTable({ "bStateSave": true });
}
根据上面的例子,“sessionUserLogin”告诉用户是否登录系统,如果这个标志(sessionUserLogin)设置为True,我想销毁之前的状态并再次初始化表,以便它可以继续保存状态。其他条件用于处理系统中的其他回发,因为在用户登录后,即使在 回发 像任何 DropDown 更改或保存记录。
我上面的代码在用户登录时工作正常,我可以清除表的状态,但我无法再次初始化表的状态。
我已经通过了这个URL。但还是找不到解决办法。
请帮忙。提前致谢。
【问题讨论】:
-
我已经查看了这个链接,但是在这个链接中使用了“iCookieDuration”属性来设置cookie的过期时间,但根据我的要求,我想在用户登录的情况下删除cookie并且想要再次重置。
-
用户“bennybenben”的第 (7) 个回复显示了一个解决方案,不会弄乱 cookie。
-
是的,我查看了“bennybenben”发布的代码,但我无法理解代码,请您发布答案并帮助我使用“bennybenben”发布的代码实现我的代码.谢谢。
-
查看
state...函数的文档,例如stateLoadCallback。这些应该有助于完成您的请求 - 至少如果您使用的是最新版本的 dataTables。
标签: c# jquery asp.net datatable