DataGrid Filter Row(可过滤行的数据表格)

Extension > DataGrid Filter Row

扩展下载地址:http://www.jeasyui.com/extension/downloads/datagrid-filter.zip (我发布的程序包整也有提供,在extension目录下)

导入'datagrid-filter.js'文件

  1. <script type="text/javascript" src="datagrid-filter.js"></script>

 

启用过滤

  1. var dg = $('#dg');
  2. dg.datagrid(); // 创建数据表格
  3. dg.datagrid('enableFilter'); // 启用过滤

属性

下列属性扩展自Datagrid,以下是新增的属性。.

属性名 属性值类型 描述 默认值
filterMenuIconCls string 用来表示选择了哪个过滤器菜单项的图标class名称。 icon-ok
filterBtnIconCls string 过滤器按钮的图标class名称。 icon-filter
filterBtnPosition string 过滤器按钮的位置。可用值有:'left' 和 'right' right
filterPosition string 过滤器栏的可折叠菜单显示位置。可用值有:'top' 和 'bottom' bottom
showFilterBar boolean 设置为true时,显示过滤器栏。 true
remoteFilter boolean 设置为true时,启用远程过滤。在启用远程过滤的时候 'filterRules' 参数将会发送到远程服务器。'filterRules' 参数值是从 'filterStringify' 函数获取的返回值。 false
filterDelay number 延迟过滤 'text' 过滤器组件中最后一次键盘输入事件。 400
filterRules array 过滤器规则定义。每个规则都包含 'field','op'和'value'属性。 []
filterMatchingType string 指定过滤行是否需要匹配全部或部分应用过滤器。可用值有:"all", "any" all
defaultFilterType string 默认过滤类型。 text
defaultFilterOperator string 默认过滤操作器。 contains
defaultFilterOptions object 默认过滤选项。
filterStringify function 字符串化过滤器规则的函数。
function(data){
	return JSON.stringify(data);
}

事件

下列事件扩展自Datagrid,以下是新增的事件。

方法名 方法参数 描述
onClickMenu item,button,field 在点击菜单项的时候触发,返回false取消该动作。
item:点击的菜单项。
button:绑定到过滤器的过滤按钮。
field:字段名。

方法

下列方法扩展自Datagrid,以下是新增的方法。

方法名 方法参数 描述
enableFilter filters 创建并启用过滤功能。'filters'参数是一个过滤器配置数组。每一个项目都包含以下属性:
1) field:自定义规则的字段名。
2) type:过滤类型,可用值有:label,text,textarea,checkbox,numberbox,validatebox,datebox,combobox,combotree。
3) options:过滤类型参数。
4) op:过滤条件:可用值有:contains,equal,notequal,beginwith,endwith,less,lessorequal,greater,greaterorequal。

代码示例:

$('#dg').datagrid('enableFilter');
$('#dg').datagrid('enableFilter', [{
	field:'listprice',
	type:'numberbox',
	options:{precision:1},
	op:['equal','notequal','less','greater']
}]);
disableFilter none 禁用过滤功能。
destroyFilter none 销毁过滤器栏。
getFilterRule field 获取过滤规则。
addFilterRule param 添加一个过滤规则。 
$('#dg').datagrid('addFilterRule', {
	field: 'desp',
	op: 'contains',
	value: 'easyui'
});
removeFilterRule field 远程过滤规则。如果 'field' 参数未指定,将删除所有过滤规则。
doFilter none 基于一些过滤规则进行过滤。
getFilterComponent field 根据指定的字段获取过滤器。
resizeFilter field 调整过滤器大小。
关注编程学问公众号