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

标签 javascript codeigniter datatables

我在 codeigniter 中有一个代码,并且我正在使用数据表,现在我想使用上面的复选框来显示/隐藏列,以让列隐藏或可能显示。我将使用以下代码填充 Controller 中数据库中的数据:

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 extensioncolvis 按钮。

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

参见this example用于代码和演示。

我还通过添加复选框修改了列可见性按钮的默认外观,请参阅 this answer了解更多详情。

关于javascript - 数据表显示/隐藏带有复选框的列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42477684/

相关文章:

JavaScript 日期与 jQuery 倒计时

javascript - 实现jQuery滚动效果的最佳方式

javascript - 在 Node.js 中解析大型 XML 文件

php - 如何使用 php Codeigniter 在 View 文件夹的主文件中包含头文件?

jquery hide() 与 flash 的计时问题

jquery - 自动调整列宽数据表的大小

javascript - DataTable jquery 选择器未触发

javascript - jquery .hover() outFunction 闪烁错误

php - CodeIgniter 子域路由最佳实践

php - Paypal单笔付款: How do i know when user accepts payment