jquery 中的ajax
load方法主要获取web服务器上静态数据
1 load方法载入HTML文档
load(url [,data] [,callback]) $(function(){ $("#send").click(function(){ $("#resText").load("test.html") }) })
2 筛选载入的HTML文档
$("#resText").load("test.html .para")
载入页面class为“para”的内容
3 传递方式
无参数传递,使用GET方式
$("#resText").load("test.php",function(){})
有参数传递,使用POST方式
$("#resText").load("test.php" , {name:"rain",age:"22"},function(){})
4 回调参数
load()方法回调函数,该函数有三个参数,
function(responseText,textStatus,XMLHttpRequest){ responseText 请求返回内容 textStatus 请求返回状态 :success,error ,notmodified , timeout XMLHttpRequest 对象 }
5$.get()方法和$.post()方法
在项目中如果要传递一些参数给服务器,可以使用$.get(),$.post()和 $.ajax方法
1 $.get(url [,data] [,callback] [,type])
type 服务器返回的内容的格式,包括xml ,html ,script ,json ,text ,_default
2 回调函数function(data,testStatus){}
6数据格式
HTML片段
不需要处理,可直接插入页面中
XML文档
可以使用强大的DOM处理能力,对XML进行处理
JSON文件
在回调函数中指明文件类型为json后
data是作为一个对象参数传入回调函数,可以直接使用
var name=data.userName
$.post()
因为jquery对js的封装,只需要改变jquery函数为$.post()就可以实行GET和POST的切换
load()方法带有参数传递时,同样会使用post方式发送请求。因此也可以使用load()方法完成同样的功能。
$.getScript() 和 $.getJson()
在事件函数中加载js和json文件
$().each() 和$.each()方法
$().each(callback)方法以匹配的元素为对象,每次执行传递的函数时,改变函数中的this对象指向一个不同的DOM元素。
$.each(object[,callback])
此方法可以用于遍历任何对象。
$.each([0,1,2]function(){})
object可以为对象和数组,
7$.ajax()
该方法为jquery最底层的实现,可以替代前面所有的方法;
8 序列化元素
$("#form").serialize()方法
可以对该表单下的数据进行序列化。
$.param(obj)
用来对一个数组或者对象按照key/value进行序列化
9 ajax全局事件
可以为元素注册ajax全局事件,当页面触发ajax时触发,如果再调用ajax方法时不触发全局事件,则在$.ajax()中设置global:false
$("#id").ajaxStart(function(){}).ajaxStop(function(){});
全局事件方法
ajaxComplete(callback)
ajaxError(callback)
ajaxSend(callback)
ajaxSuccess(callback)