//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. jQuery中的each关键词

    #转载请留言联系 从一个简单的例子引入,jQuery里的each有什么作用? <!DOCTYPE html> <html lang="en"> <he ...

  2. springBoot 微服务

    微服务,是OO (面向对象,Object Oriented) 专家 Martin Fowler 于2014年在他一篇文章<Microservice>提出的.在 Mattin 的头脑中,兴奋 ...

  3. Visual Studio跨平台开发(5):Xamarin Android多页面应用开发

    前言 大部份的Android 都具有实体或虚拟的Back键. 因此在处理多页面应用程序时, 与先前所介绍的iOS Navigation controller 比较起来会简单许多. 1. 开启Visua ...

  4. React+dva.js+typescript实现百度贴吧移动web端

    个人练习作品,有bug欢迎在github上提:) github地址:https://github.com/axel10/react-tieba 整个项目中实现起来最麻烦的应该算是滚动位置记忆和路由动画 ...

  5. FZU-2214 Knapsack problem(DP使用)

    Problem 2214 Knapsack problem Accept: 863    Submit: 3347Time Limit: 3000 mSec    Memory Limit : 327 ...

  6. log4j - 1

    具体内容: 1.       如何在项目中配置log4j使得该系统可以输出web test的日志文件(自定义格式)到工程dist目录下的junitLog/WebTestLog.log目录下,输出508 ...

  7. SQL调优的基本原则

    在使用DBMS时经常对系统的性能有非常高的要求:不能占用过多的系统内存和CPU资源.要尽可能快的完成的数据库操作.要有尽可能高的系统吞吐量.如果系统开发出来不能满足要求的所有性能指标,则必须对系统进行 ...

  8. PMBOK及PMP考试精要

    PROJECT MANAGEMENT KNOWLEDGE AREAS项目管理知识体系 2 PROJECT LIFE CYCLE / PROJECT MANAGEMENT PROCESS GROUPS项 ...

  9. [读书笔记] CSS揭秘-背景与边框

    半透明边框 默认情况下,背景会延伸到边框所在的区域下层.可以通过background-clip属性调整该默认行为. border: 10px solid rgba(0,0,0,.2) backgrou ...

  10. 使用TensorFlow实现神经网络的介绍

    http://www.toutiao.com/i6414029277641048577/