数据表与复选框切换

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数据表与复选框切换相关的知识,希望对你有一定的参考价值。

我正在努力使用一个功能,我想用一个带有jQuery的复选框打开/关闭数据表。

如果我没有定义数据表,它实际上有效,然后我没有问题地打开/关闭它。

但我想默认情况下数据表是打开的,然后才能关闭它并重新打开。我正在重新初始化警告。

我有这样的事情:

$('#datatable-switch').on('click',function(){

  if($(this).attr('data-click-state') == 0) {

    $(this).attr('data-click-state', 1);
    showLockersDataTable();

  } else {

    $(this).attr('data-click-state', 0)
    lockersTable.DataTable().destroy();
  }

});
答案

这真的好像没什么问题。你可能搞砸了一些事情

showLockersDataTable();

lockersTable.DataTable().destroy();

我无法分析,因为你没有提供showLockersDataTable()lockersTable

但你必须像这样解决它:

// Get the jQuery Object for your DataTable
var example =  $('#example');

// Bind listener on the checkbox 
$('#datatable-switch').on('click',function(){

if($(this).attr('data-click-state') == 0) {

      $(this).attr('data-click-state', 1);
      showDataTable(example);

    }
    else {

      $(this).attr('data-click-state', 0)
      hideDataTable(example);
    }
});

两个使用的功能是:

// Declare show and hide functions
function showDataTable(dataTable){

  dataTable.DataTable();

}

function hideDataTable(dataTable){

  dataTable.DataTable().destroy();

}

现在,您在click上的监听器已绑定,您可以在页面加载时启动。

showDataTable();

这是JSFiddle上的working example

以上是关于数据表与复选框切换的主要内容,如果未能解决你的问题,请参考以下文章

如何在切换片段时停止 AsyncTask?

带有复选框和自定义适配器的 ListView,片段无法正常工作

使用复选框交换div中所有内容的位置

如何刷新片段中的onBindViewHolder方法

片段与另一个片段重叠

Android中切换标签片段之间的延迟