繁体   English   中英

带有复选框的数据表显示/隐藏列

[英]datatable show/hide columns with checkbox

我在codeigniter中有一个代码,并且我使用的是数据表,现在我想使用上面的复选框创建一个show / hide列,以隐藏或显示这些列。 我将使用以下代码从控制器中的数据库填充数据:

public function dataTable_report($date) {
        $user = array('user_id' => $this->session->userdata['logged_in']['user_id']);
        $myreport = $this->Adminreport_model->getreportDataDaily($user,$date);

        $data = array();
        foreach ($myreport as $patient) {
            $row = array();  
            $row[] = $patient->check_up_id;
            $row[] = $patient->patient_fname;
            $row[] = $patient->patient_lname;
            $row[] = $patient->patient_mname;
            $row[] = $patient->check_up_date;
            $row[] = $patient->clinic_name;
            $row[] = $patient->bill_amt;

            $data[] = $row;
        }
        $output = array(   
            "data" => $data,
        );
        echo json_encode($output);
    }

现在这是我在上面选中我的复选框时不会隐藏的数据表,请帮助我: https : //jsfiddle.net/2j6w9hqt/27/

我不建议仅隐藏th元素来操纵列的可见性。

而是考虑使用Buttons扩展colvis按钮。

$('#example').DataTable( {
    dom: 'Bfrtip',
    buttons: [
        {
            extend: 'colvis',
            columns: ':not(:first-child)'
        }
    ]
} );

有关代码和演示,请参见此示例

我还通过添加复选框来修改列可见性按钮的默认外观,有关更多详细信息,请参见此答案

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM