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

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

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

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

同步与异步的区别是同步的情况下,一切与页面交互的东西都会被放到ajax请求结束后在触发,而异步并不是,他可以一边向

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

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

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

ext 的loadmask的遮掩效果:

一、可以直接应用在元素上,如:

target 可以是:document.body、元素、DOM节点、id

var loadMarsk = new Ext.LoadMask(target, {

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

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

});

loadMarsk .show();  //显示

loadMarsk .hide();  //隐藏

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

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

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

disabled    : false,

store   : store

});

三、在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 : '加载数据中,请稍候...'

}

});

ext 的loadmask 与ajax的同步请求水火不容的更多相关文章

  1. Ext.Ajax.request同步请求

    导读: ajax分为2种,一种是同步,一种是异步同步:代码执行完了之后才执行后面的代码 异步:代码刚执行,后面的代码就马上接着执行了,不管前面的代码是否执行完异步的情况下,要获得返回信息,就需要在异步 ...

  2. 第106天:Ajax中同步请求和异步请求

    同步请求和异步请求的区别 1.同步是指:发送方发出数据后,等接收方发回响应以后才发下一个数据包的通讯方式. 用户填写所有信息后,提交给服务器,等待服务器的回应(检验数据),是一次性的.信息错误又要重新 ...

  3. 用ajax的同步请求解决登陆注册需要根据服务器返回数据判断是否能提交的问题

    最近在写www.doubilaile.com的登陆注册.需要用ajax请求服务器判断用户名是否存在,用户名和密码是否匹配,进而提交数据.碰到的问题是异步请求都能成功返回数据,但是该数据不能作为紧接着的 ...

  4. js ajax同步请求造成浏览器假死的问题

    一.问题的起因 今天做一个需求遇到了这么个情况,就是用户个人中心有个功能,点击按钮,可以刷新用户当前的积分,这个肯定需要使用到ajax的同步请求了,当时喀喀喀三下五除二写玩了,大概代码如下: /** ...

  5. 普通B/S架构模式同步请求与AJAX异步请求区别(个人理解)

    在上次面试的时候有被问到过AJAX同步与异步之间的概念问题,之前没有涉及到异步与同步的知识,所以特意脑补了一下,不是很全面... 同步请求流程:提交请求(POST/GET表单相似的提交操作)---服务 ...

  6. AJAX中的请求方式以及同步异步的区别

    AJAX中的请求方式以及同步异步的区别请求方式,分为GET与POST: GET 最为常见的HTTP请求,普通上网浏览页面就是GET.GET方式的参数请求直接跟在URL后,以问号开始.(JS中用wind ...

  7. ajax同步请求JS代码

    ajax同步请求JS代码 <script type="text/javascript"> var txt = document.getElementById('txt' ...

  8. 详解Ajax请求(一)前言——同步请求的原理

    我们知道,ajax是一种异步请求的方式,想要了解异步请求,就必须要先从同步请求说起.常见的同步请求的方式是form表单的提交,我们先从一种同步请求的示例说起. 我们希望输入姓名可以从后台得到身份证号. ...

  9. 同步请求和异步请求的区别,ajax异步请求如何理解

    同步请求和异步请求的区别 先解释一下同步和异步的概念 同步是指:发送方发出数据后,等接收方发回响应以后才发下一个数据包的通讯方式. 异步是指:发送方发出数据后,不等接收方发回响应,接着发送下个数据包的 ...

随机推荐

  1. 那些好用的Chrome 插件

    1. json-viewer 推荐理由:一款Chrome浏览器查看JSON数据自动格式化显示的浏览器插件 https://github.com/tulios/json-viewer

  2. mybatis generator生成文件大小写问题

    mybatis generator插件中,如果 mysql数据表中的字段是用下划线划分的(个人一般都是喜欢这么创建表的字段,如:company_name),那么生成的Vo中会自动对应为companyN ...

  3. 框架源码系列七:Spring源码学习之BeanDefinition源码学习(BeanDefinition、Annotation 方式配置的BeanDefinition的解析)

    一.BeanDefinition 1. bean定义都定义了什么? 2.BeanDefinition的继承体系  父类: AttributeAccessor: 可以在xml的bean定义里面加上DTD ...

  4. 安装 VMWare ESXi 6.7:VMB: 548: Unsupported CPU:6.7版本的ESXi 不支持 某些cpu了

    如题,谨记! 升级是双面刃! 用6.5--版本,即可.

  5. PXE:终于成功启动 fedora live 了!

    default menu.c32 timeout 1 label fedora29-live menu label fedora29-live from ftp kernel fedora29live ...

  6. [hbase] hbase 基础使用

    一.准备 hadoop 2.8.0 (提前配置好) hbase 1.2.6 zookeeper 3.4.9 (配置完成) jdk1.8 hadoop 集群信息: zk集群: 二.安装配置 1.下载(官 ...

  7. array_walk 与 array_map的 区别

    1.array_walk是用于用户自定义的函数,所以想用array_walk($aIds, "trim");去掉数据元素中的空格是达不到目的的只能用array_walk($aIds ...

  8. window alias给cmd命令起别名

    场景: Linux的alias命令是个非常实用的工具,任何命令通过alias可以精简到很短,比如:alias l='ls -l' Windows也有alias类似的命令,就是:doskey,开启方法也 ...

  9. 将Windows 8.1 系统窗口背景设置成淡绿色?

    1.右键点击开始→运行. 2.在运行中输入: regedit 按回车键之后,打开注册表编辑器. 3.依次定位到:HKEY_CURRENT_USER\Control Panel\Colors. 4.然后 ...

  10. vue---import的几种表现形式

    在使用vue开发项目的时候,很多使用会import很多模块,或者组件,下面说下import的几种表现形式: 例如:我在 src / api / table.js import request from ...