store前台数据过滤
最近由于客户需要对grid进行大量的检索操作,而现有的grid数据是以分页的形式从数据库端获取,每次检索都需要重新进行获取,效率很低.
因而将数据进行一次加载,每次的检索操作在前台extjs进行过滤,效果就能得到很大的提升.(节约了每次与服务器的交互时间,但数据渲染所消耗时间无法缩短,因浏览器而议)
首先根据需求将grid的store改为加载全部数据
var testItemStore = new Ext.data.JsonStore({
root:'datas',
//不分页,总数据量可以不要
//totalProperty:'sum',
url:'<%=basePath%>item/testItem!getList.action',
idProperty:'id',
fields:[{name:'id'},{name:'businessType'},{name:'businessTypeCode'},{name:'itemDesc'},
{name:'unit'},{name:'unitCode'},{name:'charge'},{name:'oftenGroup'},
{name:'oftenGroupCode'},{name:'note'},{name:'sum'},{name:'subtotal'},
{name:'briefCode'},{name:'code'}]
});
testItemStore.load();
在grid的tbar中添加检索框,我这里需要的是根据store中briefCode信息进行检索
var select_id = {
xtype:'textfield',
width:120,
emptyText:'简码',
inputType:'text',
invalidText:'error',
id:'select_testItem_briefCode',
//开启键盘监听
enableKeyEvents:true,
listeners:{
//键盘按键监听
keyup:function(field, e){
var data = field.getValue();
//store的过滤
testItemStore.filter('briefCode',data,true,false);
}
}
};
Store中filter(String|Array field, String|RegExp value, [Boolean anyMatch], [Boolean caseSensitive], [Boolean exactMatch])
根据指定的参数过滤records。可以选择传递一个过滤选项数组,根据多个参数过滤。
单个过滤器示例:store.filter('name', 'Ed', true, true); //查找所有records中name包含'Ed'子串的记录
//anyMatch可选,默认为true,caseSensitive可选,默认为true
多个过滤器示例:store.filter([{property:'name',value:'Ed',anyMatch:true,caseSensitive:true},{fn:function(record){return record.get('age') == 24},scope: this}]);
参数
field:String|Array
你的数据记录的一个属性,或者一个包含多个过滤条件的数组
value:String/RegExp
要么是一个属性名的起始字符串,么是一个需要在属性上进行测试的 正则表达式
anyMatch:Boolean
(可选)true时将全字匹配,而不仅仅是匹配起始字符串
caseSensitive:Boolean
(可选)true比较时将会对大小写敏感
exactMatch:Boolean
true将会强制精确匹配(在正则中添加^和$字符).默认为fales.如果anyMatch参数为true,忽略此配置。
转载于:https://www.cnblogs.com/wenzhuolanshan/p/3656851.html
store前台数据过滤相关推荐
- Ruo-Yi前后端分离的数据过滤
Ruo-Yi前后端分离的数据过滤 若依官网的介绍:http://doc.ruoyi.vip/ruoyi/document/htsc.html#%E6%95%B0%E6%8D%AE%E6%9D%83%E ...
- 关于miniui框架中的前台grid过滤
关于miniui框架中的前台grid过滤 前言 实现方式 方式一 方式二 查询前 查询后 全部代码 关键代码 前言 项目用的前端框架比较老,在做项目迭代的时候,前台表格的数据无分页并已经为固定数据,搜 ...
- R行数据过滤基于dplyr包filter函数
R行数据过滤基于dplyr包filter函数 目录 R行数据过滤基于dplyr包filter函数 筛选等于某个值的行 使用与操作筛选行
- python与R行列数据过滤(row column filtering):dplyr、 isnull、isna、drop、select、iloc、loc、isin、filter
python与R行列数据过滤(row column filtering):dplyr. isnull.isna.drop.select.iloc.loc.isin.filter 很多工程师可能刚开始的 ...
- Pandas常见的数据过滤方法、通过列条件筛选行数据
Pandas常见的数据过滤方法.通过列条件筛选行数据 不废话了,直接看代码吧: 一般情况下,前面5种就覆盖了绝大多数需求 import pandas as pd import numpy as npd ...
- 【Android 内存优化】Android 工程中使用 libjpeg-turbo 压缩图片 ( JNI 传递 Bitmap | 获取位图信息 | 获取图像数据 | 图像数据过滤 | 释放资源 )
文章目录 一.Bitmap 图像数据处理 二.Java 层 Bitmap 对象转为 JNI 层 bitmap 对象 三.获取 bitmap 中的图像数据 四.过滤 bitmap 中的图像数据 ( 获取 ...
- SpringMVC级联获取前台数据
所谓的SpringMVC级联获取前台数据,是指后台可以通过对象给其中的对象属性下的某个属性赋值. 如下所示,player类下有一个team对象属性: 我们可以在前端传递参数时,我们只需要使用Playe ...
- Aspose Cells 控件如何实现数据过滤(附代码和下载地址)
Aspose Cells 是一款操作和处理以及转换Excel文件的类库,支持.NET和JAVA版,几乎所有Excel能实现的功能,Aspose Cells都可以实现,在Excel中经常会用到数据过滤, ...
- store内部数据调用 与 view使用store数据
这篇文章主要说一下vuex中数据处理的几点: (1)store内部数据调用 1. vuex action调用另一个action 2. action调用mutations 3. action调用外面的方 ...
最新文章
- Python数据类型 - set 集合
- 使用Android Studio新建Project并建立多个module
- java 代码性能优化_Java代码性能优化(四)
- Codejock Xtreme Toolkit Pro v12.0.0 Full Release
- 收藏!数据建模最全知识体系解读
- Reactor线程模型
- 【ES】Es使用 报错 TransportClient llegalstateException : Unsupported transport.type [netty3]
- SVGA转html最快方法(使用Python直接转)
- Python使用递归法对整数进行因数分解
- 开发者请注意!2020年的大前端发展趋势已出炉! | 原力计划
- 隐式反馈的去噪,模型取得巨大提升!
- ESP8266 驱动步进电机(28BYJ-48电机 ULN2003 驱动板)
- python苹果手机照片导入电脑_拯救你的16GB iPhone利用Seafile创建私有云将照片同步到PC上...
- AI上推荐 之 协同过滤
- 计算机取消右键粘贴,复制粘贴文件后鼠标右击取消粘贴功能的简单方法介绍
- 火狐书签栏 谷歌_适用于Firefox的Google工具栏等
- PIE框架基本接口使用方法
- 记一次子线程Thread.sleep影响主线程的坑
- ADF4350调试笔记
- 向量和矩阵求导(运用迹性质求导)