最近由于客户需要对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前台数据过滤相关推荐

  1. Ruo-Yi前后端分离的数据过滤

    Ruo-Yi前后端分离的数据过滤 若依官网的介绍:http://doc.ruoyi.vip/ruoyi/document/htsc.html#%E6%95%B0%E6%8D%AE%E6%9D%83%E ...

  2. 关于miniui框架中的前台grid过滤

    关于miniui框架中的前台grid过滤 前言 实现方式 方式一 方式二 查询前 查询后 全部代码 关键代码 前言 项目用的前端框架比较老,在做项目迭代的时候,前台表格的数据无分页并已经为固定数据,搜 ...

  3. R行数据过滤基于dplyr包filter函数

    R行数据过滤基于dplyr包filter函数 目录 R行数据过滤基于dplyr包filter函数 筛选等于某个值的行 使用与操作筛选行

  4. 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 很多工程师可能刚开始的 ...

  5. Pandas常见的数据过滤方法、通过列条件筛选行数据

    Pandas常见的数据过滤方法.通过列条件筛选行数据 不废话了,直接看代码吧: 一般情况下,前面5种就覆盖了绝大多数需求 import pandas as pd import numpy as npd ...

  6. 【Android 内存优化】Android 工程中使用 libjpeg-turbo 压缩图片 ( JNI 传递 Bitmap | 获取位图信息 | 获取图像数据 | 图像数据过滤 | 释放资源 )

    文章目录 一.Bitmap 图像数据处理 二.Java 层 Bitmap 对象转为 JNI 层 bitmap 对象 三.获取 bitmap 中的图像数据 四.过滤 bitmap 中的图像数据 ( 获取 ...

  7. SpringMVC级联获取前台数据

    所谓的SpringMVC级联获取前台数据,是指后台可以通过对象给其中的对象属性下的某个属性赋值. 如下所示,player类下有一个team对象属性: 我们可以在前端传递参数时,我们只需要使用Playe ...

  8. Aspose Cells 控件如何实现数据过滤(附代码和下载地址)

    Aspose Cells 是一款操作和处理以及转换Excel文件的类库,支持.NET和JAVA版,几乎所有Excel能实现的功能,Aspose Cells都可以实现,在Excel中经常会用到数据过滤, ...

  9. store内部数据调用 与 view使用store数据

    这篇文章主要说一下vuex中数据处理的几点: (1)store内部数据调用 1. vuex action调用另一个action 2. action调用mutations 3. action调用外面的方 ...

最新文章

  1. Python数据类型 - set 集合
  2. 使用Android Studio新建Project并建立多个module
  3. java 代码性能优化_Java代码性能优化(四)
  4. Codejock Xtreme Toolkit Pro v12.0.0 Full Release
  5. 收藏!数据建模最全知识体系解读
  6. Reactor线程模型
  7. 【ES】Es使用 报错 TransportClient llegalstateException : Unsupported transport.type [netty3]
  8. SVGA转html最快方法(使用Python直接转)
  9. Python使用递归法对整数进行因数分解
  10. 开发者请注意!2020年的大前端发展趋势已出炉! | 原力计划
  11. 隐式反馈的去噪,模型取得巨大提升!
  12. ESP8266 驱动步进电机(28BYJ-48电机 ULN2003 驱动板)
  13. python苹果手机照片导入电脑_拯救你的16GB iPhone利用Seafile创建私有云将照片同步到PC上...
  14. AI上推荐 之 协同过滤
  15. 计算机取消右键粘贴,复制粘贴文件后鼠标右击取消粘贴功能的简单方法介绍
  16. 火狐书签栏 谷歌_适用于Firefox的Google工具栏等
  17. PIE框架基本接口使用方法
  18. 记一次子线程Thread.sleep影响主线程的坑
  19. ADF4350调试笔记
  20. 向量和矩阵求导(运用迹性质求导)

热门文章

  1. 前端性能优化-图像优化
  2. 由于CRS磁盘dismount造成的CRS进程无法启动问题
  3. GoldenGate学习笔记(11)_常用参数
  4. redis单线程为什么快?
  5. Nginx的几个常用配置和技巧
  6. ubuntu修改pip的官方源为豆瓣源
  7. Day2-数据类型、字符编码、购物车
  8. 设计模式(4)--AbstractFactory(抽象工厂模式)--创建型
  9. 编译OpenJDK及JDK题外话
  10. 关于C#中使用SQLDMO来获取数据库中的一些操作