Hello.
Problem - Pagination doesn't work in case of the switched on DataGrid Filter Row.
When switching page data aren't displayed.
Pagination works if to switch-off the DataGrid Filter Row.Help to solve a problem please.
My code
1. js
$(function(){
$('#tbl').datagrid({
title: 'Type of Event Table',
fitColumns:true,
url: '/?page=e_01&event&data',
rownumbers:true,
autoRowHeight:true,
singleSelect:true,
pageSize:40,
pagination:true,
remoteFilter:false,
striped:true,
toolbar: '#toolbar',
border: false,
onDblClickRow: function (rowIndex, rowData) {
editEventype();
}
});
// Filter
var dg = $('#tbl').datagrid();
dg.datagrid('enableFilter', [{
field:'DeadLine',
type:'datebox',
options:{
panelHeight:'auto',
formatter:myformatter,
parser:myparser,
onChange:function(value){
if (value == ''){
dg.datagrid('removeFilterRule', 'DeadLine');
} else {
dg.datagrid('addFilterRule', {
field: 'DeadLine',
op: 'equal',
value: value
});
}
dg.datagrid('doFilter');
}
}
}]); // enable filter
});
2. php
$page = isset($_POST['page']) ? intval($_POST['page']) : 1;
$rows = isset($_POST['rows']) ? intval($_POST['rows']) : 40;
$sort = isset($_POST['sort']) ? strval($_POST['sort']) : 'ID, Date';
$order = isset($_POST['order']) ? strval($_POST['order']) : 'asc';
$offset = ($page-1)*$rows;
$result = array();
$rs = $con->query("SELECT count(*) from alf.task WHERE event_id = '$event_id'");
$row = mysqli_fetch_row($rs);
$result["total"] = $row[0];
$rs = $con->query("....my sql query....
ORDER by $sort $order
LIMIT $offset,$rows");
$data = array(); // export events
while (($row = $rs->fetch_assoc()) != false) {
array_push($data, $row);
}
$result["rows"] = $data;
echo json_encode($result);