jquery系列教程6-ajax的应用全解
点击打开:
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的应用全解的更多相关文章
- jquery系列教程2-style样式操作全解
全栈工程师开发手册 (作者:栾鹏) 快捷链接: jquery系列教程1-选择器全解 jquery系列教程2-style样式操作全解 jquery系列教程3-DOM操作全解 jquery系列教程4-事件 ...
- jquery系列教程7-自定义jquery插件全解:对象函数、全局函数、选择器
点击打开: jquery系列教程1-选择器全解 jquery系列教程2-style样式操作全解 jquery系列教程3-DOM操作全解 jquery系列教程4-事件操作全解 jquery系列教程5-动 ...
- jquery系列教程4-事件操作全解
点击打开: jquery系列教程1-选择器全解 jquery系列教程2-style样式操作全解 jquery系列教程3-DOM操作全解 jquery系列教程4-事件操作全解 jquery系列教程5-动 ...
- jquery系列教程3-DOM操作全解
全栈工程师开发手册 (作者:栾鹏) 快捷链接: jquery系列教程1-选择器全解 jquery系列教程2-style样式操作全解 jquery系列教程3-DOM操作全解 jquery系列教程4-事件 ...
- jquery系列教程1-选择器全解
全栈工程师开发手册 (作者:栾鹏) 快捷链接: jquery系列教程1-选择器全解 jquery系列教程2-style样式操作全解 jquery系列教程3-DOM操作全解 jquery系列教程4-事件 ...
- jQuery Mobile 所有class选项,开发全解+完美注释
全栈工程师开发手册 (作者:栾鹏) jQuery Mobile事件全解 jQuery Mobile 所有class选项 jQuery Mobile 所有data-*选项 jQuery Mobile 所 ...
- Cobalt Strike系列教程第二章:Beacon详解
上周更新了Cobalt Strike系列教程第一章:简介与安装,文章发布后,深受大家的喜爱,遂将该系列教程的其他章节与大家分享,提升更多实用技能! 第二章:Beacon详解 一.Beacon命令 大家 ...
- Jquery系列教程
最近想重新温习下Jquery,发现园子里有个很棒的系列教材,所以Mark下来. 转载自:http://www.cnblogs.com/zhangziqiu/tag/jQuery%E6%95%99%E7 ...
- [js高手之路] es6系列教程 - 函数的默认参数详解
在ES6之前,我们一般用短路表达式处理默认参数 function show( a, b ){ var a = a || 10; var b = b || 20; console.log( a, b ) ...
随机推荐
- Spring 对缓存的抽象
Cache vs. Buffer A buffer is used traditionally as an intermediate temporary store for data between ...
- JavaScript二维码生成——qrcode.js
在开发中,有时候,我们需要根据不同的内容来动态生成二维码,则可以使用qrcode.js这个小插件来实现. 1.qrcode.js文件内容: (1)未压缩(qrcode.js): /** * @file ...
- PHP初入,for循环使用
一: 找出100-999之间的所有"水仙花数".所谓水仙花数是指一个三位 数,各位数字的立方和等于该数本身.(如153次方=1的3次方+5的3次方+3的3次方)并输出这些数字 想想 ...
- 《Java程序设计》终极不改版【下】
package 大学生信息管理系统; import java.awt.event.*; import javax.swing.*; import java.awt.*; import java.uti ...
- 软件工程(GZSD2015)第二次作业小结
第二次作业,从4月7号开始,陆续开始提交作业.根据同学们提交的作业报告,相比第一次作业,已经有了巨大改变,大家开始有了完整的实践,对那些抽象的名词也开始有了直观的感受,这很好.然后有一些普遍存在的问题 ...
- 2D命令行小游戏Beta1.0
前提: 遇到许多问题,没有参考大佬一些方法是敲不出来的...Orz using System; using System.Collections.Generic; using System.Linq; ...
- 个人作业2————英语学习APP的案例分析
必应词典案例分析 第一部分 调研, 评测 1.下载并使用 第一次使用必应词典,安装完打开便是这样的界面,第一印象还行,界面平平无奇,比较简洁,上面分四个模块,这样一眼看去感觉功能比较单一 使用了下例句 ...
- 团队作业八——第二次团队冲刺(Beta版本)第5天
团队作业八--第二次团队冲刺(Beta版本)第5天 一.每个人的工作 (1) 昨天已完成的工作 完成界面跳转界面. (2) 今天计划完成的工作 简单模式逻辑代码涉及与相关功能的具体实现 (3) 工作中 ...
- Swing-JOptionPane对话框用法-入门
对话框是GUI程序中常见的界面,通常用来反馈提示信息.告警或获取用户输入.比如这种: JOptionPane是Swing中的一个对话框类,它能够提供常见的绝大多数对话框效果,本文对这个类进行介绍.需要 ...
- 201521123078《java程序设计》第四次总结
1. 本周学习总结 1.1 尝试使用思维导图总结有关继承的知识点. 1.2 使用常规方法总结其他上课内容. 继承是面向对象最显著的一个特性.继承是从已有的类中派生出新的类,新的类能吸收已有类的数据属性 ...