Datatables 清理bStateSave cookie

Datatables 清理bStateSave cookie,datatables,Datatables,bStateSave选项可用于将数据表的状态保存在cookie中 我想在注销时清理这个cookie 目前,我从浏览器中检查了cookie的名称,并在注销时使用PHP setcookie()更改了其过期日期,并用硬编码对名称进行了编码。 它可以工作,但有点难看,因为我不知道如何从API检索cookie名称 有没有合适的方法 谢谢我唯一能想到的是: fnCookieCallbackfrom 您可以回调cookie,将过期时间设置为现在并保存它。 我不知道这是否有帮助,但希望你能找到答案:)我不知道你

bStateSave选项可用于将数据表的状态保存在cookie中

我想在注销时清理这个cookie

目前,我从浏览器中检查了cookie的名称,并在注销时使用PHP setcookie()更改了其过期日期,并用硬编码对名称进行了编码。 它可以工作,但有点难看,因为我不知道如何从API检索cookie名称

有没有合适的方法


谢谢

我唯一能想到的是:

fnCookieCallback
from

您可以回调cookie,将过期时间设置为现在并保存它。
我不知道这是否有帮助,但希望你能找到答案:)

我不知道你是否已经得到了答案, 但这是我用过的

有一个用于初始化数据表的属性,名为:iCookieDuration。 您应该做的是设置一个以秒为单位的“cookie持续时间”的时间

那么你有:

     $('.datatable').dataTable({           
        "iCookieDuration": 60*60*24,// 1 day (in seconds)
     });
<>你设置一个你认为最佳的时间。
希望能帮助你

DataTables中的状态保存是通过将JSON字符串保存到cookie中来完成的,这使得它能够在保持客户端状态存储的同时尽可能保持浏览器兼容性。有时,能够修改由表保存的参数可能会很有用

如果您想在注销时清除datatable状态,我建议您只需清除存储。

存储接口的
removietem()
方法在传递密钥名时,将从存储中删除该密钥

function populateStorage() {
  localStorage.setItem('bgcolor', 'red');
  localStorage.setItem('font', 'Helvetica');
  localStorage.setItem('image', 'myCat.png');

  localStorage.removeItem('image');
}

只需在注销操作时编写javascript

echo '<script type="text/javascript">localStorage.clear();</script>';
echo'localStorage.clear();';

localStorage.clear();
<script type="text/javascript">localStorage.clear();</script>