繁体   English   中英

在Ajax调用之后过滤数据表

[英]Filter Datatables after Ajax call

我在CodeIgniter中工作,我有一个DataTable,我想在ajax被调用后从DT筛选数据。 我正在尝试通过过滤表来执行此操作,但是它不起作用。

这是JS代码。

 $(function () {
   var tableRep=  $("#tblreport").dataTable({
       responsive: true, filter:true, order: [[ 1, "desc" ]],
            processing: true, serverSide: true,
            ajax: { "url": baseurl+"reports/Report/dataTable", "type": "POST" },
            columns:
            [
              {data:"idReport",},
              {data:"date"},
              {data:"customer"},
              {data:"status",visible:false},
              {data:null,searchable:false,orderable: false,width:"120px", render: function (row)
              { if (row.status == "wait") {return '<a class="glyphicon glyphicon-search" data-toggle="modal" data-target="#report">Asign</a>'; }
              else  if (row.status == "process")  {return '<a  data-toggle="modal" data-target="#report">Edit</a>';} else return '';} }
           ],
           columnDefs:
           [
             { responsivePriority: 1, targets: 1 },
             { responsivePriority: 2, targets: -1 },
             { responsivePriority: 3, targets: 2 }
           ], fnCreatedRow: function( nRow, aData, iDataIndex ) {
             if ( aData["status"] == "ready" ) { $('td', nRow).css('background-color', '#BEF781'); }
             else if ( aData["status"] == "wait" ) { $('td', nRow).css('background-color', '#F2F5A9'); }
             else { $('td', nRow).css('background-color', '#FFFFFF'); }
       }})
      });
var filteredData = tableRep.column(4).data().filter( function ( value, index ) {return value!="cancel" ? true : false;} );

您尝试过此选项吗?

var tableRep=  $("#tblreport").dataTable({
    //your config
})
.on('draw.dt', function () {
     //Add here yours filters
 });

暂无
暂无

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

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