手机
当前位置:查字典教程网 >编程开发 >Javascript教程 >jquery ajax请求方式与提示用户正在处理请稍等
jquery ajax请求方式与提示用户正在处理请稍等
摘要:初次使用$.ajax(),我没有去区分过ajax的异步请求和同步请求的不同,刚开始使用同步请求,以至后来出现许多问题,特别在体验度方面。异步...

初次使用$.ajax() ,我没有去区分过ajax的异步请求和同步请求的不同,刚开始使用同步请求,以至后来出现许多问题,特别在体验度方面。

异步和同步:

同步意味着执行完一段程序才能执行下一段,它属于阻塞模式,其表现在网页上的现象是——浏览器会锁定页面(即所谓的页面假死状态),用户不能操作其它的,必须等待当前请求返回数据。而使用异步方式请求,页面不会出现假死现象。

提升用户体验度:

当用户提交数据等待页面返回结果是需要时间的,有时这段等待时间比较长,为了提高用户体验度,我们通常会给出 “正在处理,请稍等!”诸如此类的提示。我们可通过设置$.ajax()下的参数beforeSend()来实现,

eg:

html关键代码

<div id="warning"></div>

js文件中的关键代码

$.ajax(function(){ . . . //省略了一些参数,这里只给出async 和 beforeSend async: false, //同步请求,默认情况下是异步(true) beforeSend: function(){ $('#warning').text('正在处理,请稍等!'); } });

注意,如果你按照同步设置 async: false, $('#warning').text('正在处理,请稍等!');在网页中根本没有出现效果,如果将$('#warning').text('正在处理,请稍等!');换成 alert(‘test');在发送请求前会立即看到弹出框,这说明 beforeSend:是执行了,但是换成别的诸如 $('#warning').text('正在处理,请稍等!'); 在请求发出返回结果了都没有看到提示出现。关于这个问题,我是纳闷了很久,问题到底是什么我还是不清楚。

把同步请求改成异步请求,上面的问题就没有了,

beforeSend: function(){ $('#warning').text('正在处理,请稍等!'); }

会立即被执行。

【jquery ajax请求方式与提示用户正在处理请稍等】相关文章:

gameboy网页闯关游戏(riddle webgame)--仿微信聊天的前端页面设计和难点

jQuery获取字符串中出现最多的数

JavaScript实现点击文字切换登录窗口的方法

jquery.validate使用时遇到的问题

jquery任意位置浮动固定层插件用法实例

jQuery实现弹出窗口中切换登录与注册表单

jquery实现用户打分评分特效

jQuery切换所有复选框选中状态的方法

jQuery获取上传文件的名称的正则表达式

html下载本地

精品推荐
分类导航