//dateTimeRange过滤扩展
$.extend($.fn.datagrid.defaults.filters, {
dateRange: {
/*onInit: function(target){
var name = getPluginName(target);
alert('ss');
$(target).find('.d1,.d2').datebox.unbind('change').bind('change', function(e){
$(target)[name]('removeFilterRule', field);
$(target)[name]('doFilter');
});
},*/
init: function(container, options){
var c = $('<div style="display:inline-block"><input class="d1"><input class="d2"></div>').appendTo(container);
c.find('.d1,.d2').datebox();
c.find('.d1,.d2').datebox().unbind('change');
c.find('.d1').datebox({
onSelect:function(date){
var d1 = c.find('.d1');
var d2 = c.find('.d2'); var valueFrom = d1.datebox('getValue');
var valueTo = d2.datebox('getValue');
if($.trim(valueFrom)!=''){
valueFrom = valueFrom+" 00:00:00";
$('#dataGrid').datagrid('addFilterRule', {
field: 'lastSendTimeFrom',
op: 'greaterorequal',
value: valueFrom
});
} if($.trim(valueTo)!=''){
valueTo = valueTo+" 23:59:59";
$('#dataGrid').datagrid('addFilterRule', {
field: 'lastSendTimeTo',
op: 'lessorequal',
value: valueTo
});
} $('#dataGrid').datagrid('doFilter'); d1.datebox('setText',date.getFullYear()+'-'+ (date.getMonth()+1) +'-'+date.getDate());
d1.datebox('hidePanel');
}
}); c.find('.d2').datebox({
onSelect:function(date){
var d1 = c.find('.d1');
var d2 = c.find('.d2'); var valueFrom = d1.datebox('getValue');
var valueTo = d2.datebox('getValue');
if($.trim(valueFrom)!=''){
valueFrom = valueFrom+" 00:00:00";
$('#dataGrid').datagrid('addFilterRule', {
field: 'lastSendTimeFrom',
op: 'equal',
value: valueFrom
});
} if($.trim(valueTo)!=''){
valueTo = valueTo+" 23:59:59";
$('#dataGrid').datagrid('addFilterRule', {
field: 'lastSendTimeTo',
op: 'equal',
value: valueTo
});
} $('#dataGrid').datagrid('doFilter'); d2.datebox('setText',date.getFullYear()+'-'+ (date.getMonth()+1) +'-'+date.getDate());
d2.datebox('hidePanel');
}
}); return c;
},
destroy: function(target){
$(target).find('.d1,.d2').datebox('destroy');
},
getValue: function(target){
var d1 = $(target).find('.d1');
var d2 = $(target).find('.d2');
return d1.datebox('getValue') + ':'+d2.datebox('getValue');
},
setValue: function(target, value){
var d1 = $(target).find('.d1');
var d2 = $(target).find('.d2');
var vv = value.split(':');
d1.datebox('setValue', vv[0]);
d2.datebox('setValue', vv[1]);
},
resize: function(target, width){
$(target)._outerWidth(width)._outerHeight(22);
$(target).find('.d1,.d2').datebox('resize', width/2);
}
}
});

使用:

 $('#dataGrid').datagrid('enableFilter' , [{
field:'lastSendTime',
type:'dateRange'
} ]);

效果截图:

EasyUI datagrid 过滤事件段的更多相关文章

  1. easyui datagrid 悬浮事件

    easyui的单元格提示窗体  鼠标悬浮事件 function findAllPreven() { var infoname = $('#area').val(); areadatagrid=$('# ...

  2. JQuery easyui Datagrid 分页事件

    easyui是Jquery中的一个轻量级UI插件,提供了一些诸如window.datagrid.button等控件.现在主要说说Datagrid中分页控件的使用. easyui中可以单独添加分页pag ...

  3. EasyUI DataGrid组织事件冒泡

    在事件内部需要阻止的地方添加如下代码 ]; 解释: arguments.callee是获得我自定义的事件处理方法OnSelected的方法体. .caller是获得调用OnSelected的上层方法( ...

  4. 扩充 jQuery EasyUI Datagrid 数据行鼠标悬停/离开事件(onMouseOver/onMouseOut)

    客户需求: jQuery EasyUI Datagrid 用户列表鼠标悬停/离开数据行时显示人员头像(onMouseOver/onMouseOut) 如图所示,Datagrid 鼠标悬停/离开数据行时 ...

  5. 扩展 jQuery EasyUI Datagrid 数据行鼠标悬停/离开事件(onMouseOver/onMouseOut)

    客户需求: jQuery EasyUI Datagrid 用户列表鼠标悬停/离开数据行时显示人员头像(onMouseOver/onMouseOut) 如图所示,Datagrid 鼠标悬停/离开数据行时 ...

  6. EasyUi datagrid 单选框选中事件

    Easyui datagrid中的单选框默认是这样定义的 columns: [[ { field: 'CK', title: '', checkbox: true, width: 30 }]]. 平常 ...

  7. Easyui DataGrid DateRange Filter 漂亮实用的日期区间段筛选功能

    自定义扩展Jquery easyui datagrid filter组件实现对日期类型区间段的筛选功能.显示效果如一下 是不是非常实用 引用的jquery 组件是 Date Range Picker ...

  8. EasyUI datagrid 明细表格中编辑框 事件绑定 及灵活计算 可根据此思路 扩展其他

    原创 : EasyUI datagrid 明细表格中编辑框 事件绑定 及灵活计算 可根据此思路 扩展其他 转载,请注明出处哦!谢谢! 原创 : EasyUI datagrid 明细表格中编辑框 事件绑 ...

  9. EasyUI中datagrid双击事件

    EasyUI中datagrid双击事件 在jsp文件底部增加代码: <script type="text/javascript"> //数据表双击事件 $('#tabl ...

随机推荐

  1. xen hypercall 的应用层实现

    一句话描述: xen hypercall 在应用层的实现,最终都变成对  /proc/xen/privcmd 的 ioctl 系统调用 我们知道,xen 在应用层最上层的接口是 libxl , 基本上 ...

  2. Java错误随手记

    一.Eclipse启动时提示: An internal error occurred during: "Initializing Java Tooling" 1.关闭Eclipse ...

  3. 如何使用python发送邮件

    使用python发送邮件,用的是SMTP协议. 因此在qq邮箱中,要设置开启SMTP服务 只要能开启一个就行 在我们执行程序的时候,会发现邮件被发送过来了 在python中还有一个更简单的第三方模块, ...

  4. cmake add_executable 与 include_directories

    在cmake里add_executable里如果没有包含.cpp文件,该.cpp文件就不适用include_directories包含文件

  5. FZU -2212 Super Mobile Charger(水题)

     Problem 2212 Super Mobile Charger Accept: 1033    Submit: 1944Time Limit: 1000 mSec    Memory Limit ...

  6. HDU 3966 Aragorn's Story(树链剖分)(线段树区间修改)

    Aragorn's Story Time Limit: 10000/3000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) ...

  7. 每天一个Linux命令(10)cp命令

    cp命令用来将一个或多个源文件或者目录复制到指定的目的文件或目录.它可以将单个源文件复制成一个指定文件名的具体的文件或一个已经存在的目录下.cp命令还支持同时复制多个文件,当一次复制多个文件时,目标文 ...

  8. 内连接(INNER JOIN)

    内连接组合两张表,并且基于两张表中的关联关系来连接它们.使用内连接需要指定表中哪些字段组成关联关系,并且需要指定基于什么条件进行连接.内连接的语法如下: INNER JOIN table_name O ...

  9. BZOJ 2669- [cqoi2012]局部极小值

    不错的题啊 挺好的结合了容斥和状压DP 保证每个数各不相同,又有大小关系,那么就可以将数字从小到大填. 不难发现 局部极小值<=8,这个可以状压,f[i][j] 表示填了前i个数,局部极小值被填 ...

  10. 【bzoj4808】【马】二分图最大点独立集+简单感性证明

    (上不了p站我要死了,侵权度娘背锅) Description 众所周知,马后炮是中国象棋中很厉害的一招必杀技."马走日字".本来,如果在要去的方向有别的棋子挡住(俗称"蹩 ...