1、关于加载和回调的问题

ExtJs的Store在加载时候一般是延迟加载的,这时候Grid就会先出现一片空白,等加载完成后才出现数据;因此,我们需要给它添加一个提示信息!

但是Store却没有waitMsg属性。

解决方案:

1.给store添加监听器,监听beforeload事件,加载前弹出提示框,加载完成后关闭提示框

2.callback为load的回调函数,在加载完成后执行,因此关闭提示框由它完成;

3.一定要给store的reload方法也添加callback函数,已关闭提示框

例子主要代码如下:

varmsgTip;  // 一定要定义在使用前,且定义为全局变量
var reportStore=new Ext.data.Store({
proxy:reportProxy,
reader:reportReader,
listeners:{
beforeload:function(){
msgTip = Ext.MessageBox.show({
title:'提示',
width : 250,
msg:'页面报表统计信息刷新中,请稍后......'
});
}
}
});
reportStore.load({
callback: function(records, options, success){
msgTip.hide();  // 加载完成,关闭提示框
}
});

注意:如果有调用reload来重新刷新页面,reload也要添加callback函数来关闭提示框

reportStore.reload({
callback: function(records, options, success){
msgTip.hide(); // 加载完成,关闭提示框
}
});

--------以下为其他参数------

store.load({

params:{start:0,limit:20},  //参数
// callback是加载完毕时执行的回调函数,它包含3个参数:records参数表示获得的数据,
// options表示执行load()时传递的参数,success表示是否加载成功。
callback: function(records, options, success){
Ext.Msg.alert('info', '加载完毕');
},
scope: store,       //Scope用来指定回调函数执行时的作用域
add: false            //Add为true时,load()得到的数据会添加在原来的store数据的末尾,
//否则会先清除之前的数据,再将得到的数据添加到store中

});

2、从一个store添加符合某条件记录给另一个store中。

    var MyDocnumStore_Load = function(store){
        //var index = 0;
        store.each(function(record) {
            if(record.data.PlanCarNo != '' ) {  //column_name 替换成你的列名, '1' 替换成你的值
                if (record.data.Docnum != _rec.get('Docnum')){
                   var _TmpStr = record.data.UseDate+'----->'+record.data.PlanCarNo;
                    myDocnumStore.add({
                                      'UpDocnum':record.data.Docnum
                                  ,'DocnumDesc':_TmpStr
                                  ,'UseDate':record.data.UseDate
                                  ,'PlanCarNo':record.data.PlanCarNo
                     });
                }
            }
           })
        myDocnumStore.sort('UseDate', 'ASC');
    };
    MyDocnumStore_Load(mystore);           //载入可拼车列表;

Extjs4 关于Store的一些操作(转)的更多相关文章

  1. Extjs4 使用store的post方法

    Extjs4 使用store的post方法 引用官网的一句话 Now when we call store.load(), the AjaxProxy springs into action, mak ...

  2. 对Extjs中store的多种操作

    Store.getCount()返回的是store中的所有数据记录,然后使用for循环遍历整个store,从而得到每条记录. 除了使用getCount()的方法外,还可以使用each()函数,如下面的 ...

  3. 68. 对Extjs中store的多种操作

    转自:https://www.cnblogs.com/exmyth/archive/2013/05/16/3082045.html 先来个声明,看着不错,贴过来的,没都测试过. Store.getCo ...

  4. Extjs4中的store

      Extjs 4引入新的数据包,其中新增了不少新类并对旧有的类作出了修整.使数据包更强大和更容易使用.  本章我们将学习一下内容: 2.1. 概述新特性      Extjs4的数据包引入了如Mod ...

  5. Redux原理(一):Store实现分析

    写在前面 写React也有段时间了,一直也是用Redux管理数据流,最近正好有时间分析下源码,一方面希望对Redux有一些理论上的认识:另一方面也学习下框架编程的思维方式. Redux如何管理stat ...

  6. java并发编程(十七)内存操作总结

    转载请注明出处:http://blog.csdn.net/ns_code/article/details/17377197 主内存与工作内存 Java内存模型的主要目标是定义程序中各个变量的访问规则, ...

  7. 读redux有感: redux原来是这样操作的。

    2017.9.10日 教师节 : ~当一个事物你没有接触,但是生活中 常常用到他,你就不得不去了解他了. 注:新手可以看一下,毕竟博主也是个菜鸟,没法写高深的东西,不想看博主扯淡的直接看第三节啦~~ ...

  8. 转: 【Java并发编程】之十七:深入Java内存模型—内存操作规则总结

    转载请注明出处:http://blog.csdn.net/ns_code/article/details/17377197 主内存与工作内存 Java内存模型的主要目标是定义程序中各个变量的访问规则, ...

  9. 【Java并发编程】:深入Java内存模型—内存操作规则总结

    主内存与工作内存 java内存模型的主要目标是定义程序中各个变量的访问规则,即在虚拟机中将变量存储到内存和从内存中取出变量这样的底层细节.此处的变量主要是指共享变量,存在竞争问题的变量.Java内存模 ...

随机推荐

  1. winphone 开发学习笔记(2)

    导航 NavigationService.Navigate(new Uri("xxxx.xaml",UriKind.Relative)) xxx表示要跳转的目标页面 页面和页面导航 ...

  2. Git error: hint: Updates were rejected because the remote contains work that you do hint: not have locally. This is usually caused b

    hint: Updates were rejected because the remote contains work that you dohint: not have locally. This ...

  3. 折腾iPhone的生活——我的越狱插件精品筛选

    威锋上有人说的好,iOS系统越狱是为了装更多东西,安卓Root是为了删更多东西.   插件 众所周知,iOS系统是非常封闭的,基本上涉及到底层的功能在iOS上都不能实现,除非越狱装插件,所以插件就成为 ...

  4. Bzoj 2718: [Violet 4]毕业旅行 && Bzoj 1143: [CTSC2008]祭祀river 传递闭包,二分图匹配,匈牙利,bitset

    1143: [CTSC2008]祭祀river Time Limit: 10 Sec  Memory Limit: 162 MBSubmit: 1878  Solved: 937[Submit][St ...

  5. HDU-1300(基础方程DP-遍历之前所有状态)

    Problem Description In Pearlania everybody is fond of pearls. One company, called The Royal Pearl, p ...

  6. TortoiseSVN搭建本地版本库及简单操作使用

    TortoiseSVN是windows上一款著名的版本控制软件,对于我们管理自己的代码,特别是对一个团队来说,非常重要. 本文探讨的是如何搭建本地的版本库. (1)安装TortoiseSVN之后需要创 ...

  7. css3 设置背景图片大小(缩略图形式缩小)

    废话当然不说了. 直接上代码 <style> #mycon { background:url('Tpl/1.jpg'); background-size:400px 400px; back ...

  8. android中解析文件的三种方式

    android中解析文件的三种方式     好久没有动手写点东西了,最近在研究android的相关技术,现在就android中解析文件的三种方式做以下总结.其主要有:SAX(Simple API fo ...

  9. Linux内核中SPI/I2c子系统剖析

    Linux内核中,SPI和I2C两个子系统的软件架构是一致的,且Linux内核的驱动模型都以bus,driver,device三种抽象对象为基本元素构建起来.下文的分析将主要用这三种抽象对象的创建过程 ...

  10. RHCA-RH442-Linux系统性能调优 (学习)

    RHCA-RH442-Linux系统性能调优