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,忽略此配置。
store前台数据过滤的更多相关文章
- ABP框架 - 数据过滤
文档目录 本节内容: 简介 预定义过滤 ISoftDelete 何时可用? IMustHaveTenant 何时可用? IMayHaveTenant 何时可用? 禁用过滤 关于using声明 关于多租 ...
- C#实现通用数据过滤窗体
最近一直在做WINFORM项目,所以经常有些新的想法或尝试与大家分享,之前与大家分享了通用窗体遮罩层.通用可附加数据绑定的DataGridView.窗体渐显,今天来分享一个大家在其它软件中常见的功能: ...
- 通过js获取前台数据向一般处理程序传递Json数据,并解析Json数据,将前台传来的Json数据写入数据库表中
摘自:http://blog.csdn.net/mazhaojuan/article/details/8592015 通过js获取前台数据向一般处理程序传递Json数据,并解析Json数据,将前台传来 ...
- php数据过滤函数与方法示例【转载】
1.php提交数据过滤的基本原则 1)提交变量进数据库时,我们必须使用addslashes()进行过滤,像我们的注入问题,一个addslashes()也就搞定了.其实在涉及到变量取值时,intval( ...
- PHP数据过滤
1.php提交数据过滤的基本原则 1)提交变量进数据库时,我们必须使用addslashes()进行过滤,像我们的注入问题,一个addslashes()也就搞定了.其实在涉及到变量取值时,intval ...
- SQL学习之高级数据过滤
一.高级数据过滤之IN操作符 IN 操作符用来指定条件范围,范围中的每个条件都可以进行匹配.IN取一组由逗号分隔.括在圆括号中的合法值.代码如下: select ItemId,ItemName,Che ...
- FastReport 数据过滤
FastReport 数据过滤 在DataBind 的 OnBeforePrint 设置条件 例:显示 大于0 的数据 procedure MasterData1OnBeforePrint(Sen ...
- .NET WinForm程序中给DataGridView表头添加下拉列表实现数据过滤
转:http://www.cnblogs.com/jaxu/archive/2011/08/04/2127365.html 我们见过Excel中的数据过滤功能,可以通过点击表头上的下拉列表来实现数据的 ...
- ABP文档笔记 - 数据过滤
预定义的过滤 ISoftDelete 软删除过滤用来在查询数据库时,自动过滤(从结果中抽取)已删除的实体.如果一个实体可以被软删除,它必须实现ISoftDelete接口,该接口只定义了一个IsDele ...
随机推荐
- NSJSONSerialization(json序列化)
//通过调用isValidJSONObject来判断Foundation对象是否可以转换为JSON数据 NSJSONSerialization isValidJSONObject:obj 我们能利用N ...
- springboot中swaggerUI的使用
demo地址:demo-swagger-springboot springboot中swaggerUI的使用 1.pom文件中添加swagger依赖 2.从github项目中下载swaggerUI 然 ...
- LMAX Disruptor—多生产者多消费者中,消息复制分发的高性能实现
解决的问题 当我们有多个消息的生产者线程,一个消费者线程时,他们之间如何进行高并发.线程安全的协调? 很简单,用一个队列. 当我们有多个消息的生产者线程,多个消费者线程,并且每一条消息需要被所有的消费 ...
- winform 记住密码功能
//登录 private void btn_Login_Click(object sender, EventArgs e) { //记住密码 ...
- web应用动态文档技术
动态生成web文档分为服务器动态生成.客户端动态生成 服务器动态生成文档技术主要有: CGI - 公共网关接口,它是一个允许Web服务器与后端程序以及脚本进行通信的标准化接口.通常是web服务器收到一 ...
- weex 小结--内建模块
使用以下模块时,需要导入依赖:var *** = require('@weex-module/****'); 1. navigator --像浏览器一样切换页面 2. webview(module) ...
- hadoop中遇到的一些问题
1.验证词统计程序.----无法加载本地库 出现错误: WARN util.NativeCodeLoader: Unable to load native-hadoop library for you ...
- 7 -- Spring的基本用法 -- 3...
7.3 Spring 的核心机制 : 依赖注入 Spring 框架的核心功能有两个. Spring容器作为超级大工厂,负责创建.管理所有的Java对象,这些Java对象被称为Bean. Spring容 ...
- jquery阻止元素冒泡的两种方法
通常情况下,如果给父元素添加事件之后,子元素也会继承同样的事件,这个时候就要阻止子元素的这种行为,成为阻止冒泡,总结两种解决方法: html代码: <div id="parent&qu ...
- PHP加速处理插件 Zend Optimizer,Zend Guard Loader 和 Zend Opcache 区别
PHP 5.3.X 以前版本 为 Zend Optimizer PHP 5.3.X 之后 更名为 Zend Guard Loader 可以帮助php执行加密后的php代码 安装实例以Ubu ...