Php 页面加载时的yadcf初始筛选器值
所以我一直在寻找一个关于如何做到这一点的答案,并没有太多的运气,所以我想我会在这里张贴一些东西。我要寻找的是一种为过滤器设置默认值的方法,这样当页面加载时,它会根据这个初始值自动搜索datatable。例如我想用一个特定的日期预加载range\u date过滤器,这个日期实际上是从$\u GET变量中获取的,所以这个值不能硬编码。我当前的列代码如下所示Php 页面加载时的yadcf初始筛选器值,php,datatables,yadcf,Php,Datatables,Yadcf,所以我一直在寻找一个关于如何做到这一点的答案,并没有太多的运气,所以我想我会在这里张贴一些东西。我要寻找的是一种为过滤器设置默认值的方法,这样当页面加载时,它会根据这个初始值自动搜索datatable。例如我想用一个特定的日期预加载range\u date过滤器,这个日期实际上是从$\u GET变量中获取的,所以这个值不能硬编码。我当前的列代码如下所示 {column_number : 4, filter_type: "range_date", date_format: 'yy-mm-dd'},
{column_number : 4, filter_type: "range_date", date_format: 'yy-mm-dd'},`enter code here`
到目前为止,我已经找到了一个关于添加
exFilterColumn
的源代码,但是没有关于如何使用filter\u类型的示例:“range\u date”
有什么想法吗?经过一番挖掘,我已经找到了如何使用range\u date过滤器来获得exFilterColumn
。首先,我必须将以下内容添加到我的列初始化中:
filter_delay: 1500, filter_default_label: 'Search'
然后我不得不补充
yadcf.exFilterColumn(tableOne, [
[1, {
from: '2016-11-02',
to: '2016-11-03'
}],
]);
我的完整代码如下所示:
// Appointment datatable
var table = $('#tableID').dataTable( {
"processing": true,
"serverSide": true,
"ajax":{
url :"ajax/users-get-table-data.php" // json datasource
type: "post", // method , by default get
data:"workOrderStatusID=2",
},
}).yadcf([
{column_number : 0, filter_type: "text", filter_default_label: ['Search']},
{column_number : 1, filter_type: "range_date", date_format: 'yy-mm-dd', filter_delay: 1500, filter_default_label: 'Search'}
]);
yadcf.exFilterColumn(table, [
// 1 is the matching column of my targeted range_date filter
[1, {
<? //setting the date from get variable
$date = mysqli_real_escape_string($mysqli,$_GET['date']);
$tomorrow = date('Y-m-d',strtotime($date . "+1 days"));
?>
from: '<? echo $date; ?>',
to: '<? echo $tomorrow; ?>'
}],
]);
yadcf.exFilterColumn(table, [
// 1 being the column number, and "value" being the value you want it to initially search for when page loads
[1, "value"]
]);