extjs的filter问题

今天我主要是总结一下这次使用extjs中使用filters的一些理解

在使用store这个时我们经常是药对一些获取到的数据进行筛选工作其中有两条思路

1 在store中直接配置好filters 这样在数据加载好,然后润色到页面上的是时候就会自动的进行筛选功能

2 我们手动的后期给加载好数据的store加入filters

注意 上面第一种放大因为时在store中直接配置的fiters 所以每次在store进行load时都会进行筛选功能,此处注意只是在load的时候会进行筛选,reload 的时候时也会进行筛选的,具体下一节分析。

第二种因为是手动进行配置的所以load时不会进行筛选

这里进行filters的使用的

1 在store中配置files filters : Obje

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
ExtJS 提供了用于过滤数据的强大功能。你可以使用 Ext.util.Filter 类来创建和应用过滤器过滤器可以应用于 ExtJS 的各种数据组件,如 Grid、Tree 等。 要使用过滤器,首先你需要创建一个 Ext.util.Filter 的实例,指定过滤的字段、操作符和值。例如,如果你要过滤一个 Grid 的数据,你可以这样创建一个过滤器: ```javascript var filter = Ext.create('Ext.util.Filter', { property: 'name', // 过滤的字段名 operator: 'like', // 操作符(如:'=', 'like', '>', '<' 等) value: 'John' // 过滤的值 }); ``` 然后,你可以将这个过滤器应用到你的数据组件上,比如一个 Grid: ```javascript var grid = Ext.create('Ext.grid.Panel', { // 配置项... store: myStore, // 绑定的数据源 columns: myColumns, // 列定义 viewConfig: { plugins: { ptype: 'gridviewdragdrop', dragGroup: 'firstGridDDGroup', dropGroup: 'secondGridDDGroup' }, listeners: { beforeitemcontextmenu: function(view, record, item, index, e) { e.stopEvent(menu.showAt(e.getXY())); return false; }, itemdblclick: function(gridView, record) { var rec = record.data; var id = rec.id; var name = rec.name; var age = rec.age; Ext.Msg.alert('双击', '您双击了 ' + name + ' 的记录'); } } }, features: [{ ftype: 'filters' // 使用 filters 特性 }] }); ``` 通过将 `features` 配置项设置为 `[{"ftype":"filters"}]`,你就可以启用过滤功能。然后,你可以使用 Grid 的 `getPlugin()` 方法获取到 filters 插件,并调用 `addFilters()` 方法将过滤器添加到 filters : ```javascript var filters = grid.getPlugin('gridfilters'); filters.addFilters(filter); ``` 这样,过滤器就会应用到 Grid 的数据上,显示符合过滤条件的数据行。 这只是 ExtJS 过滤功能的基本用法,你还可以根据具体需求进行更复杂的过滤操作。详细的使用方法可以参考 ExtJS 的官方文档。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值