转自
http://blog.csdn.net/gaoyusi4964238/article/details/4378987
这里首先引用$.Ajax()中 async 和success的官方的解释:
async Boolean Default: true
By default, all requests are sent asynchronous (e.g. this is set to true by default). If you need synchronous requests, set this option to false. Note that synchronous requests may temporarily lock the browser, disabling any actions while the request is active.
success Function
A function to be called if the request succeeds. The function gets passed two arguments: The data returned from the server, formatted according to the 'dataType' parameter, and a string describing the status. This is an Ajax Event.
在这里,async默认的设置值为true,这种情况为异步方式,就是说当ajax发送请求后,在等待server端返回的这个过程中,前台会继续执行ajax块后面的脚本,直到server端返回正确的结果才会去执行success,也就是说这时候执行的是两个线程,ajax块发出请求后一个线程和ajax块后面的脚本(另一个线程)例:
[javascript] view plaincopy
$.ajax({
type:"POST",
url:"Venue.aspx?act=init",
dataType:"html",
success:function(result){ //function1()
f1();
f2();
}
failure:function (result) {
alert('Failed');
},
}
function2();
在上例中,当ajax块发出请求后,他将停留function1(),等待server端的返回,但同时(在这个等待过程中),前台会去执行function2(),也就是说,在这个时候出现两个线程,我们这里暂且说为function1() 和function2()。
当把asyn设为false时,这时ajax的请求时同步的,也就是说,这个时候ajax块发出请求后,他会等待在function1()这个地方,不会去执行function2(),知道function1()部分执行完毕。
注:success中的方法f1(),f2()一般(即f1(),f2()不包括ajax块时)不会异步执行,就是说f2的执行是以f1()为前提的。
发表评论
-
初学者学习linux
2012-12-19 17:53 657http://wuhaoshu.blog.51cto.com/ ... -
jquery选择器总结
2012-11-21 11:43 9461.<script type="text/ja ... -
外网的压力测试
2012-11-07 10:32 1136外网的压力测试,可以使用apache的ab或curl-load ... -
试着学学object-c
2012-11-05 15:50 7961.http://www.neatstudio.com/sho ... -
栈的基本原理,实现自己的堆栈
2012-10-23 10:16 1248栈是重要的数据结构,从数据结构角度看,栈也是线性表,其特殊性在 ... -
java双括弧初始化
2012-10-22 17:39 137501. Map map = new HashMap() {{ ... -
学习java单例模式
2012-10-22 16:16 697http://calmness.iteye.com/blog/ ... -
JsonUtil错误总结
2012-09-26 10:10 1055java.lang.Integer cannot be cas ... -
struts2总结错误
2012-09-25 10:40 7241.数据类型的不对应,一般是,后台要求int而前端的zoneI ... -
Jquery总结
2012-09-18 14:08 0$.toJSON(); $.parseJson(unescap ... -
mysql学习总结
2012-08-23 17:19 8381.<![CDATA[ select ifnull(su ... -
学习强者的成长之路
2012-08-09 10:25 836http://xwnet.blog.51cto.com/233 ... -
MD5正规的写法
2012-07-20 10:26 876public static String getMD5(byt ... -
引用:异常处理!
2012-07-20 09:37 706... -
关于网站的设计
2012-07-19 10:08 740网站的性能优化:http://www.cnblogs.com/ ... -
eval用法
2012-07-12 10:12 877在函数中改变全局变量 var X2={} X2.Eval= ... -
错误总结
2012-07-11 10:38 6371.missing ) in parenthetical错误可 ... -
登录验证struts2
2012-07-09 09:40 738类需要继承ActionSupport,重写execute方法, ... -
学习js的好地方
2012-06-28 13:16 793http://www.zhuoda.org/lunzi/dir ... -
登陆页面
2012-06-26 18:42 978http://themeforest.net/item/dre ...
相关推荐
jQueryTree的异步加载功能主要通过API中的`data-url`属性实现,这个属性可以设置一个URL,当用户展开树形结构的某个节点时,jQueryTree会发送一个Ajax请求到该URL,获取子节点的数据。 **配置异步加载** 在使用...
【AJAX&JQuery详细用法说明】 AJAX(Asynchronous JavaScript and XML)是一种在无需刷新整个页面的情况下,能够更新部分网页技术。它通过在后台与服务器进行少量数据交换,使得网页实现异步更新,提高了用户体验。...
以下是对Ajax常用技术的详细说明: 1. **XMLHttpRequest对象**:Ajax的核心是XMLHttpRequest(XHR)对象,它是JavaScript内置的对象,负责与服务器进行异步通信。通过创建XMLHttpRequest实例,可以发送HTTP请求到...
理解了这些基础知识后,你可以尝试更深入的学习,如使用jQuery、axios等库简化Ajax操作,了解Promise和async/await用于异步控制,以及研究Fetch API作为XMLHttpRequest的替代方案。 总之,`ajax经典入门实例源码`...
- **Promises与async/await**:理解Promise和async/await如何改善异步代码的可读性和可维护性。 9. **实践项目** - **创建一个简单的Ajax天气查询应用**:结合API接口,实现无刷新的天气信息获取和展示。 通过这...
由于无法直接查看压缩包内容,建议解压后在文件夹中逐一查看,尤其是名为"ajaxtutorial"的文件或目录,这很可能是教程的主体部分,包含了完整的示例代码和说明文档。通过实际操作和学习这些文件,可以更好地理解和...
**Ajax(Asynchronous JavaScript and XML)...通过学习提供的"Ajax基础教程.pdf",可以深入理解这一技术,并借助"[说明].txt"解决学习中遇到的问题,而"幸运林 一个程序员的随笔.url"则可能提供更多的编程心得和技巧。
以下是对Ajax支持的详细说明: 1. **Ajax基础**: - Ext.Ajax是ExtJS中的核心模块,用于处理所有与Ajax相关的操作。它提供了发送异步请求、处理响应和错误处理等功能。 - 使用`Ext.Ajax.request`方法发起Ajax请求...
其中 `settings` 参数是一个可选的对象,包含了配置 AJAX 请求所需的各项属性。 **3. 重要参数说明** - **async**(异步模式) - 类型:Boolean - 默认值:true - 描述:设置为 true 表示异步请求,默认值即...
### Ajax配置说明与使用详解 #### 一、Ajax概述 Ajax(Asynchronous JavaScript and XML)是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术。它通过在后台与服务器进行少量数据交换,使得网页实现...
- `open(method, url, async)`: 初始化一个新请求。 - `send(data)`: 发送请求到服务器。 - `setRequestHeader(name, value)`: 设置HTTP头部字段。 #### 7. AJAX五板斧 - **动态替换页面内容**: 使用JavaScript...
- **说明**: 在不同的浏览器环境下创建 `XMLHttpRequest` 对象的方法有所不同。在 Internet Explorer 中,使用 `ActiveXObject`;而在其他浏览器中,则使用 `XMLHttpRequest` 构造函数。这段代码通过检测浏览器...
JSONP的基本原理是在客户端创建一个`<script>`标签,并将其`src`属性设置为目标服务器的URL,这样就可以绕过同源策略的限制。服务器端则需要配合客户端返回一个可执行的JavaScript代码段,其中包含回调函数名和需要...
- 高级话题,如Promise和async/await在Ajax中的应用 通过学习这份PPT,你可以深入理解Ajax的工作机制,并掌握如何在实际项目中运用Ajax来提升Web应用的用户体验。同时,了解相关的源码和工具,能帮助你更好地调试和...
4. **数据处理**:当`readyState`变为4(请求已完成)且`status`为200时,说明请求成功。此时可以通过`responseText`或`responseXML`属性获取服务器返回的数据。 5. **JSONP(JSON with Padding)**:在跨域请求时...
实现Ajax同步请求的方式是通过设置`async`属性为`false`。在jQuery中,可以通过AJAX调用的选项中设置`async: false`来达到这一目的。然而,需要注意的是,在实际开发中,推荐使用异步模式,因为同步模式会阻塞浏览器...
当使用jQuery的$.ajax()方法进行数据交互时,通过合理运用beforeSend()回调函数,并注意设置请求的异步属性(async: true),可以有效地提升用户体验,避免页面假死现象。在实现过程中,需要考虑到异步和同步请求的...
本文将通过*** MVC示例,详细说明如何实现在Ajax请求过程中显示进度条的功能。 要实现在请求过程中显示进度条,通常的做法是在发起请求之前显示一个加载动画(如GIF图片),并且防止用户进行可能引发额外请求的操作...
XMLHttpRequest是AJAX的核心,用于在后台与服务器交换数据,而JSONP是一种非官方的跨域数据交互协议,它利用了script标签可以跨域加载资源的特性,通过动态创建script标签并设置其src属性来发起请求。CORS则是现代...