dagride实现模糊查询

Posted 强大的程序猿人

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了dagride实现模糊查询相关的知识,希望对你有一定的参考价值。

一:首行放置搜索元素(可以是easyui中的input、datetimebox、combox等等)

将各个元素的value值获取到存为Json格式(data{a:..,b:..,c:..}),再回车或者确认搜索时将数据提交到后台,提交时可以使用datagride的reload方法$("#dg").datagride(‘reload‘,data),后台使用API接收数据([FromBody] value),后台取数据的方法为:var a=value([a]),之后用于作为查询数据的条件

 

二:使用datagride-filter.js实现过滤

包含 ‘datagrid-filter.js‘ 文件

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

启用过滤(Filter)

  1. var dg = $(‘#dg‘);
  2. dg.datagrid(); // create datagrid
  3. dg.datagrid(‘enableFilter‘); // enable filter

绑定搜索条件(添加过滤规则)

属性

该属性扩展自数据网格(datagrid),下面是为数据网格(datagrid)添加的属性。

名称类型描述默认值
filterMenuIconCls string 过滤菜单项(指示要使用的项目)的图标 class。 icon-ok
filterBtnIconCls string 过滤按钮的图标 class。 icon-filter
filterBtnPosition string 过滤按钮的位置。可能的值是 ‘left‘ 和 ‘right‘。 right
filterPosition string 过滤栏相对于列的位置。可能的值是 ‘top‘ 和 ‘bottom‘。 bottom
remoteFilter boolean 设置为 true 则执行远程过滤。
当启用时,‘filterRules‘ 参数将发送到远程服务器。
‘filterRules‘ 参数的值由 ‘filterStringify‘ 函数获得。
false
filterDelay number 从 ‘text‘ 过滤组件中最后一个键输入事件起,延迟执行过滤的时间。 400
filterRules array 过滤规则的定义。每个规则包含 ‘field‘、‘op‘ 和 ‘value‘ 属性。 []
filterStringify function 把过滤规则字符串化的函数。
  1. function(data){
  2. return JSON.stringify(data);
  3. }

方法

下面的方法扩展自数据网格(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。

代码实例:

  1. $(‘#dg‘).datagrid(‘enableFilter‘);
  2. $(‘#dg‘).datagrid(‘enableFilter‘, [{
  3. field:‘listprice‘,
  4. type:‘numberbox‘,
  5. options:{precision:1},
  6. op:[‘equal‘,‘notequal‘,‘less‘,‘greater‘]
  7. }]);
addFilterRule param 添加一个过滤规则。
  1. $(‘#dg‘).datagrid(‘addFilterRule‘, {
  2. field: ‘desp‘,
  3. op: ‘contains‘,
  4. value: ‘easyui‘
  5. });
removeFilterRule field 移除过滤规则。
如果 ‘field‘ 参数未指定,移除所有的过滤规则。
doFilter none 基于过滤规则执行过滤。
getFilterComponent field 在指定的域上获取过滤组件。

以上是关于dagride实现模糊查询的主要内容,如果未能解决你的问题,请参考以下文章

使用reusltMap实现高级映射,工具类,别名,多条件查询以及模糊查询

Mongodb数据库的模糊搜索

实现模糊查询用户的功能

nodejs + mongodb实现模糊查询与全文搜索

SQL多表模糊查询

MySQL模糊查询再也用不着 like+% 了