ext ajax同步加载数据,ext 的loadmask 与ajax的同步请求水火不容

因为ajax 的同步请求会有一段请求时间。有的短。有的长,对于短的咱们仍是能接受的,不过长的话就必须处理一下了,ajax

就好比处于ext 4.2.0的框架下,须要一个遮掩的样式,框架是有自带的,loadmask ,这个东西,不过是放在同步ajax中的话框架

loadmask函数处于哪一个位置都会被同步ajax 放到ajax请求结束以后在 触发,并且使用同步ajax中 ,页面的话也是等ajax请求异步

完在渲染的,这样的状况下,ajax的请求时间这个空挡仍是没有被遮掩的。这种状况的处理是,使用异步的ajax,ide

同步与异步的区别是同步的状况下,一切与页面交互的东西都会被放到ajax请求结束后在触发,而异步并非,他能够一边向函数

后台请求数据一边处理页面的事件。这就是异步的好处,不过异步也有一些地方是让人不舒服的,就是异步请求到的数据不能spa

在外部使用,这也一个头疼的地方。不过这一点我还没深刻的研究过,也不知道是否是与异步请求的时间有关。orm

重点是同步ajax请求期间不能与页面交互事件

ext 的loadmask的遮掩效果:rem

1、能够直接应用在元素上,如:  get

target 能够是:document.body、元素、DOM节点、id

var loadMarsk = new Ext.LoadMask(target, {

msg     : '正在删除数据,请稍候。。。。。。',

removeMask  : true// 完成后移除     这个没有尝试过,不知道是什么完成以后移除

});

loadMarsk .show();  //显示

loadMarsk .hide();  //隐藏

2、还能够和Ext.data.Store结合,可将效果与Store的加载达到同步,如:

var loadMarsk = new Ext.LoadMask(document.body, {

msg     : '数据处理中,请稍候。。。。。。',

disabled    : false,

store   : store

});

3、在form的submit方法中有waitMsg属性来达到上面的效果 ,如:

form.submit({

waitMsg : '正在提交数据...'

.....

实例代码:

//添加到body

var myMask = new Ext.LoadMask(Ext.getBody(), {msg:"Please wait..."});

myMask.show();

//添加到grid

var grid =  new Ext.grid.GridPanel({

cm     : myCm,

store  : myStore,

loadMask   : {

msg : '加载数据中,请稍候...'

}

});

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值