【问题标题】:datatables.net codeigniter not sorting when query have order_by当查询有 order_by 时,datatables.net codeigniter 不排序
【发布时间】:2016-08-11 17:11:42
【问题描述】:

我使用过这个 datatable.net 数据表,问题是当我点击排序时,当我在查询中有 order_by 时它不起作用

这是我的模型

var $table = 'attendance';
var $column = array('DATE','TIME_IN','BREAK_OUT','BREAK_IN','TIME_OUT','TOTAL_TIME','STATUS');
var $order = array('DATE' => 'asc');

public function __construct()
{
    parent::__construct();
}

private function _get_datatables_query()
{

    $this->db->where('ID_NUM', $_SESSION['EMP_ID']->ID_NUM);
    $this->db->from($this->table);
    $this->db->order_by('DATE','desc')


    $i = 0;

    foreach ($this->column as $item) 
    {
        if($_POST['search']['value'])
            ($i===0) ? $this->db->like($item, $_POST['search']['value']) : $this->db->or_like($item, $_POST['search']['value']);
        $column[$i] = $item;
        $i++;

    }

    if(isset($_POST['order']))
    {
        $this->db->order_by($column[$_POST['order']['0']['column']], $_POST['order']['0']['dir']);

    } 
    else if(isset($this->order))
    {
        $order = $this->order;
        $this->db->order_by(key($order), $order[key($order)]);
    }

}

除了排序,一切都很好。

【问题讨论】:

    标签: php jquery codeigniter datatable datatables


    【解决方案1】:

    大多数数据表总是内置有自己的排序机制。这就是为什么 order by 子句看起来不起作用但它确实起作用的原因。当您单击列的标题时,您应该能够对表格进行排序。

    【讨论】:

    • 你知道datatables.net的这个数据表是如何工作的吗?如果你这样做,请告诉我。谢谢
    • 对于 datatables.net,您必须导入它自己的 css 和 jquery 文件。根据您选择使用的表(它们有不同的表类型)排序总是在导入的文件中实现。它们非常易于使用。好好阅读他们的文档
    猜你喜欢
    • 2015-11-15
    • 1970-01-01
    • 1970-01-01
    • 2014-11-15
    • 1970-01-01
    • 1970-01-01
    • 2014-06-23
    • 2012-04-07
    • 1970-01-01
    相关资源
    最近更新 更多