• 设为首页
  • 收藏本站
  • 积分充值
  • VIP赞助
  • 手机版
  • 微博
  • 微信
    微信公众号 添加方式:
    1:搜索微信号(888888
    2:扫描左侧二维码
  • 快捷导航
    福建二哥 门户 查看主题

    Extjs4 关于Store的一些操作(加载/回调/添加)

    发布者: 竹韵9933 | 发布时间: 2025-8-13 15:52| 查看数: 83| 评论数: 0|帖子模式

    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); //载入可拼车列表;

    来源:互联网
    免责声明:如果侵犯了您的权益,请联系站长(1277306191@qq.com),我们会及时删除侵权内容,谢谢合作!

    最新评论

    QQ Archiver 手机版 小黑屋 福建二哥 ( 闽ICP备2022004717号|闽公网安备35052402000345号 )

    Powered by Discuz! X3.5 © 2001-2023

    快速回复 返回顶部 返回列表