点击打开:

jquery系列教程1-选择器全解

jquery系列教程2-style样式操作全解

jquery系列教程3-DOM操作全解

jquery系列教程4-事件操作全解

jquery系列教程5-动画操作全解

jquery系列教程6-ajax的应用全解

jquery系列教程7-自定义jquery插件全解

jquery系列教程8-jquery插件大全

jquery中ajax的应用详解:

jquery在ajax上的应用包括三个层次。

最底层$.ajax()
第2层load(),$.get(),$.post(),
第3层$.getScript(),$.getJSON()。

getScript()

动态加载js文件

$.getScript("index5.js",function(){
    alert("载入完成");
});

getJSON()

动态加载json文件

$.getJSON("test.JSON",function(data){                       //data为返回的数据
    $.each(data.myback,function(commentindex,comment){        //$.each遍历数组和对象,commentindex对象成员或数组索引,comment对应变量或内容
        return false;                                         //返回false即可退出each函数
    });
});

load()

//$(selector).load(URL,data,callback)函数通常来获取服务器的静态文件,URL中可以添加选择器进行筛选。

$("#div1").load("data/demo_test.html #p1",function(){   //将远程文件的内容中的id=p1的元素加载到div1中,并调用回调函数。
});

$("#div1").load("test.jsp",{name:"name1",age:"22"},function(responseTxt,textStatus,XMLHttpRequest){   //可以向远程路径传递参数,返回数据,load的发送方式就根据有无数据决定,有数据就是post方式,没有就是get方式
    //responseTxt;                                          //请求返回的内容
    //textStatus;                                           //请求状态  success、error、notmodified、timeout
    //XMLHttpRequest;                                       //XMLHttpRequest对象
});

get和post发送数据的方式不同,但是在jquery的ajax中这种区别对用户不可见。get传输的数据大小有限制,get请求的数据会被浏览器缓存,两种方式在服务器端的接收不同。

get()

//$.get(URL,data,callback,type);

$.get("web.jsp",{
    name:"name1",                                            //get方法中的数据不仅可以是映射方法,也可以是"name=name1&age=12"的字符串方式,
    age:"12"                                                  //如果有中文,要使用编码,"name="+encodeURIComponent("栾鹏")+"&age=12"
},function(data,textStatue){                                  //data表示返回的内容,可以是xml,JSON文件,HTML片段。textStatus表示请求状态:sucess,error,notmodified,timeout4种
    $("#div1").html(data);                                    //如果是html片段,直接设置代码段
    username = $(data).find("comment").attr("username");      //如果是xml文档,则使用$转化为dom对象
    username = data.username;                                 //如果是json数据,当成对象使用

});

post()

//$.post(URL,data,callback);

$.post("web.jsp", $("#form1").serialize(),                 //serialize序列化表单内容,作为jQuery的表单对象的函数。
    function(data,textStatue){                              //data表示返回的内容,可以是xml,JSON文件,HTML片段。textStatus表示请求状态:sucess,error,notmodified,timeout4种
    $("#div1").html(data);                                    //如果是html片段,直接设置代码段
    username = $(data).find("comment").attr("username");      //如果是xml文档,则使用$转化为dom对象
    username = data.username;                                 //如果是json数据,当成对象使用

});

ajax()

//通用的ajax函数

$.ajax(options)
$.ajax({
    type:"POST",                                               //方式
    url:"test.jsp",                                            //地址
    dataType:"JSON",                                           //数据类型  xml(xml文档),html(html代码),script(js代码),json(json数据),jsonp(jsonp格式数据),text(纯文本)
    beforeSend:function(XMLHttpRequest){                        //发送前函数, 这里可以修改XMLHttpRequest,例如添加HTTP头
    },
    complete:function(XMLHttpRequest,textStatus){               //请求完成函数    //请求成功或失败均调用此函数
    },
    sucess:function(data,textStatus){                           //请求成功,成功返回,    //data有可能是xmlDoc,jsonObj,html,text等等
    },
    error:function(XMLHttpRequest,textStatus,errorThrown){      //请求失败函数
    },
    global:true                                                 //是否触发全局ajax事件,默认为true。全局函数开启,任何jquery类能调用后面的ajax全局函数
});

全局ajax函数

任何jquery对象都可以调用全局ajax函数

$("#loading").ajaxStart(function(){});                          //ajaxStart请求开,ajaxStop请求结束   ajaxComplete请求完成    ajaxError请求错误    ajaxSend发送请求前    ajaxSucess请求成功

序列化

serialize()序列化,将元素转化为xx=xx&xx=xx&xx=xx字符串形式,不仅能用于表单

$(":checkbox,:radio").serialize();                              //只会将选中的值序列化

//serializeArray序列化dom元素,返回JSON格式数据
var fields = $(":checkbox,:radio").serializeArray();
$.each(fields,function(i,field){
    field.key;   //JSON的key
    field.value;   //JSON的值
});

//$.param()方法,序列化数组或映射
var obj={a:1,b:2,c:3};
var k= $.param(obj);                                            //转化为a=1&b=2&c=3

jquery系列教程6-ajax的应用全解的更多相关文章

  1. jquery系列教程2-style样式操作全解

    全栈工程师开发手册 (作者:栾鹏) 快捷链接: jquery系列教程1-选择器全解 jquery系列教程2-style样式操作全解 jquery系列教程3-DOM操作全解 jquery系列教程4-事件 ...

  2. jquery系列教程7-自定义jquery插件全解:对象函数、全局函数、选择器

    点击打开: jquery系列教程1-选择器全解 jquery系列教程2-style样式操作全解 jquery系列教程3-DOM操作全解 jquery系列教程4-事件操作全解 jquery系列教程5-动 ...

  3. jquery系列教程4-事件操作全解

    点击打开: jquery系列教程1-选择器全解 jquery系列教程2-style样式操作全解 jquery系列教程3-DOM操作全解 jquery系列教程4-事件操作全解 jquery系列教程5-动 ...

  4. jquery系列教程3-DOM操作全解

    全栈工程师开发手册 (作者:栾鹏) 快捷链接: jquery系列教程1-选择器全解 jquery系列教程2-style样式操作全解 jquery系列教程3-DOM操作全解 jquery系列教程4-事件 ...

  5. jquery系列教程1-选择器全解

    全栈工程师开发手册 (作者:栾鹏) 快捷链接: jquery系列教程1-选择器全解 jquery系列教程2-style样式操作全解 jquery系列教程3-DOM操作全解 jquery系列教程4-事件 ...

  6. jQuery Mobile 所有class选项,开发全解+完美注释

    全栈工程师开发手册 (作者:栾鹏) jQuery Mobile事件全解 jQuery Mobile 所有class选项 jQuery Mobile 所有data-*选项 jQuery Mobile 所 ...

  7. Cobalt Strike系列教程第二章:Beacon详解

    上周更新了Cobalt Strike系列教程第一章:简介与安装,文章发布后,深受大家的喜爱,遂将该系列教程的其他章节与大家分享,提升更多实用技能! 第二章:Beacon详解 一.Beacon命令 大家 ...

  8. Jquery系列教程

    最近想重新温习下Jquery,发现园子里有个很棒的系列教材,所以Mark下来. 转载自:http://www.cnblogs.com/zhangziqiu/tag/jQuery%E6%95%99%E7 ...

  9. [js高手之路] es6系列教程 - 函数的默认参数详解

    在ES6之前,我们一般用短路表达式处理默认参数 function show( a, b ){ var a = a || 10; var b = b || 20; console.log( a, b ) ...

随机推荐

  1. Spring Cloud官方文档中文版-客户端负载均衡:Ribbon

    官方文档地址为:http://cloud.spring.io/spring-cloud-static/Dalston.SR2/#_spring_cloud_netflix 文中例子我做了一些测试在:h ...

  2. NullpointerException处理

    毫无疑问,空指针NullpointerException是我们最常遇到异常,没有之一! 在刚进入编程职业时,我想,大部分刚进入的同学肯定会受到前辈们的叮咛:一定要防止空指针,这是个低级错误.你们不是? ...

  3. 个人作业3-个人总结(Alpha阶段)

    一.个人总结 1.团队状况:这是我们第一次团队开发,小组成员的编程水平都相对一般,要在一周内完成一个APP是一个很大的考验.再加上冲刺的那周团队大半成员都在为一个比赛培训,时间就更少了,曾经有很多次我 ...

  4. 【1414软工助教】团队作业9——测试与发布(Beta版本) 得分榜

    题目 团队作业9--测试与发布(Beta版本) 往期成绩 个人作业1:四则运算控制台 结对项目1:GUI 个人作业2:案例分析 结对项目2:单元测试 团队作业1:团队展示 团队作业2:需求分析& ...

  5. 201521123005 《Java程序设计》 第十四周学习总结

    1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结多数据库相关内容. 2. 书面作业 Q1. MySQL数据库基本操作 建立数据库,将自己的姓名.学号作为一条记录插入.(截图,需出现 ...

  6. 201521123071 《JAVA程序设计》第十四周学习总结

    第14周作业-数据库 1. 本周学习总结 1.1 以你喜欢的方式(思维导图.Onenote或其他)归纳总结多数据库相关内容. 1.使用JDBC将Java程序与数据库连接 1.1注册驱动 Class.f ...

  7. 201521123056 《Java程序设计》第13周学习总结

    1. 本周学习总结 2. 书面作业 1. 网络基础 1.1 比较ping www.baidu.com与ping cec.jmu.edu.cn,分析返回结果有何不同?为什么会有这样的不同? 1.1 答: ...

  8. 201521123092《java程序设计》第十周学习总结

    1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结异常与多线程相关内容. 2. 书面作业 本次PTA作业题集异常.多线程 1.finally 题目4-2 1.1 截图你的提交结果(出 ...

  9. LINUX - awk命令之NF和$NF区别 (转)

    NF和$NF 区别问答:(转)1.awk中$NF是什么意思?#pwd/usr/local/etc~# echo $PWD | awk -F/ '{print $NF}'etcNF代表:浏览记录的域的个 ...

  10. sed命令基础2

    我在sed命令基础里面说了一下sed的基础用法,sed还有一些高级用法,由于我也是在学习中,写的博客可能会有想不到的地方,有问题希望大家指出. sed的高级用法主要在于两个空间的使用,模式空间和保持空 ...