Javascript 数组中的数据表数据?

Javascript 数组中的数据表数据?,javascript,php,jquery,codeigniter,datatable,Javascript,Php,Jquery,Codeigniter,Datatable,我现在有一个工作数据表,它直接从我的表中获取数据。问题是,现在我想使用来自多个表的数据填充另一个Datatable。我已经有了一个可以返回所需数据的sql查询。我想做的是将我想要的列的每个数据放在不同的数组中,然后将它们放在datatable中 $data = $this->log_send_model->getListDetailled($conditions,array('from'=>$this->uri->segment(4)),array('orderBy

我现在有一个工作数据表,它直接从我的表中获取数据。问题是,现在我想使用来自多个表的数据填充另一个Datatable。我已经有了一个可以返回所需数据的sql查询。我想做的是将我想要的列的每个数据放在不同的数组中,然后将它们放在datatable中

$data = $this->log_send_model->getListDetailled($conditions,array('from'=>$this->uri->segment(4)),array('orderBy'=>array('id_log_send'=>'desc')));
$arrayMess = array();
   // Other array for columns

   foreach ($data as $value) {
      # code...
      array_push($arrayMess, $value->message);
      //var_dump($arrayMess);

}
在这里,我希望一列是所有$value->message数据。我想对每一列都这样做,然后将其放入数据表中

$data = $this->log_send_model->getListDetailled($conditions,array('from'=>$this->uri->segment(4)),array('orderBy'=>array('id_log_send'=>'desc')));
$arrayMess = array();
   // Other array for columns

   foreach ($data as $value) {
      # code...
      array_push($arrayMess, $value->message);
      //var_dump($arrayMess);

}
以下是数据表代码:

$(document).ready(function () {

$("#datatable").dataTable({
   processing: true,
    serverSide: true,
    ajax: {
        "url": "<?php echo base_url()."DatatableControl/dataTable"; ?>",
        "type": "POST"
    },
    columns: [
     { data: "id_log_send" },
     { data: "date" },
     { data: "recipient" },
     { data: "message" },
     { data: "etat" }
    ]
   })
});
但它不起作用


如何从查询中获取数据并将其放入数据表中?

数据表以json的形式获取数据,因此只需对数组进行json编码即可完成任务

我认为您遵循的是MVC体系结构,然后使用ajax从视图调用的函数应返回json格式的输出

在控制器上

public function datatable(){
        $data = $this->log_send_model->getListDetailled($conditions,array('from'=>$this->uri->segment(4)),array('orderBy'=>array('id_log_send'=>'desc')));
        $arrayMess = array();
           // Other array for columns

           foreach ($data as $value) {
              # code...
              array_push($arrayMess, $value->message);
              //var_dump($arrayMess);

        }
      echo json_encode($arrayMess);
}
在查看数据表部分添加此代码

    <table id="datatable">
      <thead>
         <tr>
           <th>id_log_send</th>
            <th>Date</th>
            <th>Recipient</th>
            <th>Message</th>
            <th>Etat</th>
         </tr>
    </thead>
    </table>
     <script>  
       $(document).ready(function () {
       if ( ! $.fn.dataTable.isDataTable( '#datatable' ) ) {
              var table = $("#datatable").DataTable();
            }
        $.ajax({
           "url": "<?php echo base_url()."DatatableControl/dataTable"; ?>",
            "type": "POST",
            success:function(data){
           $.each(data,function(i,item){
                        $('#datatable').dataTable().fnAddData( [
                            "<tr><td>"+item.id_log_send+"</td>",
                            "<td>"+item.date+"</td>",
                            "<td>"+item.recipient+"</td>",
                            "<td>"+item.message+"</td>",
                             "<td>"+item.etat+"</td></tr>"] );
                    });
           },error:function(error){ console.log(error);}
        });
});
</script>

 
id\u日志\u发送
日期
接受者
信息
埃塔特
 
$(文档).ready(函数(){
if(!$.fn.dataTable.isDataTable('#dataTable')){
var table=$(“#datatable”).datatable();
}
$.ajax({
“url”:“,
“类型”:“职位”,
成功:功能(数据){
$。每个(数据、功能(i、项){
$('#datatable').datatable().fnAddData([
“+项目id\u日志\u发送+”,
“+项目日期+”,
“+项目。收件人+”,
“”+项。消息+“”,
“+item.etat+”);
});
},错误:函数(错误){console.log(错误);}
});
});

我希望这会对您有所帮助

我这样做了,但当我这样做时:{data:}我有“意外标识符”
{data:}
试试这个当我这样做时,我有一个“意外标记非法”,然后将值分配给变量,如
var a=“
,并在数组中添加
变量a
,它会触发相同的错误,令牌非法。当我从控制器使用dataTable方法时,我有一个500内部错误,“Uncaught TypeError:传递给CI的参数1:Exceptions…”