黑马程序员技术交流社区

标题: jquery ajax 的回传函数 [打印本页]

作者: 李青    时间: 2011-12-7 11:28
标题: jquery ajax 的回传函数
本帖最后由 李青 于 2011-12-7 14:31 编辑

简单代码如下:
$(function(){
           alert(5);
           $.post("Handler1.ashx",function(data,status){
                 alert(9);
           });
           alert(7);
           alert(10);
        });
为什么alert(9);在alert(7); alert(10);后输出?

作者: 新空气    时间: 2011-12-7 12:26
因为Jquery执行的时候是从上往下执行,不会等待ajax请求成功后再往下执行。所以就会出现alert(9),在alert(7);alert(10);后输出。
作者: 张海涛    时间: 2012-12-10 00:22
因为jquery执行时遇到可执行的语句继续向下执行,alert(7);alert(10);响应速度比
$.post("Handler1.ashx",function(data,status){
     alert(9);
});这句话响应速度要快,它们没有内部逻辑代码需要解析,这句话运行时稍微耗费了点时间,所以alert(9)后输出了。
这和java,php等语言稍有不同,这些编程代码是从上往下执行的顺序结构,前面没解析完后面不执行!




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2